Transmitting apparatus and non-uniform constellation mapping method thereof

ABSTRACT

A transmitting apparatus is disclosed. The transmitting apparatus includes an encoder to perform channel encoding with respect to bits and generate a codeword, an interleaver to interleave the codeword, and a modulator to map the interleaved codeword onto a non-uniform constellation according to a modulation scheme, and the constellation may include constellation points defined based on various tables according to the modulation scheme.

CROSS-REFERENCE TO THE RELATED APPLICATION

This is a continuation of U.S. application Ser. No. 15/726,806 filedOct. 6, 2017, now U.S. Pat. No. 10,050,742, which is a continuation ofU.S. application Ser. No. 14/715,817 filed on May 19, 2015, now U.S.Pat. No. 9,847,851, the disclosures of which is incorporated herein byreference in its entirety.

BACKGROUND

1. Field

Apparatuses and methods consistent with exemplary embodiments of theinventive concept relate to transmitting and receiving date usingbroadcasting, more particularly, to the design of non-uniformconstellations used in a Bit Interleaved Coded Modulation (BICM) mappingbits at an output of an encoder and interleaver to complexconstellations.

2. Description of the Related Art

The current broadcasting systems consistent with the Digital VideoBroadcasting Second Generation Terrestrial (DVB-T2) use a BitInterleaved and Coded Modulation (BICM) chain in order to encode bits tobe transmitted. The BICM chain includes a channel encoder like a LowDensity Parity Check (LDPC) encoder followed by a Bit Interleaver and aQuadrature Amplitude Modulation (QAM) mapper. The role of the QAM mapperis to map different bits output from the channel encoder and interleavedusing the Bit Interleaver to QAM cells. Each cell represents a complexnumber having real and imaginary part. The QAM mapper groups M bits intoone cell. Each cell is translated into a complex number. M, which is thenumber of bits per cell, is equal to 2 for QPSK, 4 for 16 QAM, 6 for 64QAM, and 8 for 256. It is possible to use a higher QAM size in order toincrease a throughput. For example: 1K QAM is a constellation containing1024 possible points and used to map M=10 bits. The DVB-T2 and previousstandards use a uniform QAM. The uniform QAM has two importantproperties: possible points of constellation are rectangular, andspacing between each two successive points is uniform. The uniform QAMis very easy to map and demap.

The QAM is also easy to use since it does not need to be optimised as afunction of the signal to noise ratio (SNR) or the coding rate of thechannel code like the LDPC code. However, the capacity of the uniformQAM leaves a big gap from the theoretical limit, known as the Shannonlimit. The performance in terms of bit error rate (BER) or frame errorrate (FER) may be far from optimal.

SUMMARY

In order to reduce the gap from Shannon limit and provide a betterBER/FER performance, a non-uniform constellation (NUC) is generated byrelaxing the two properties of the uniform QAM, namely: the square shapeand the uniform distance between constellations points.

It is an aim of certain exemplary embodiments of the present inventionto address, solve and/or mitigate, at least partly, at least one of theproblems and/or disadvantages associated with the related art, forexample at least one of the problems and/or disadvantages describedabove. It is an aim of certain exemplary embodiments of the presentinvention to provide at least one advantage over the related art, forexample at least one of the advantages described below.

The present invention is defined in the independent claims. Advantageousfeatures are defined in the dependent claims.

Other aspects, advantages, and salient features of the invention willbecome apparent to those skilled in the art from the following detaileddescription, which, taken in conjunction with the annexed drawings,disclose exemplary embodiments of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and/or other aspects will be more apparent by describingcertain exemplary embodiments with reference to the accompanyingdrawings, in which:

FIGS. 1A to 12 are views to illustrate a transmitting apparatusaccording to exemplary embodiments;

FIGS. 13 to 18 are views to illustrate a receiving apparatus accordingto exemplary embodiments;

FIGS. 19 to 22 are views to illustrate an interleaving method of a blockinterleaver, according to exemplary embodiments;

FIG. 23 is a schematic diagram of a first algorithm according to anexemplary embodiment;

FIG. 24 is a flowchart illustrating the operations of the firstalgorithm, according to an exemplary embodiment;

FIG. 25 illustrates the convergence of C_last with respect to one of theparameters as the first algorithm of FIGS. 23 and 24 is performed,according to an exemplary embodiment;

FIG. 26 illustrates a second algorithm according to an exemplaryembodiment for determining an optimal constellation at a given SNR valueS in an AWGN channel;

FIG. 27 illustrates the convergence of the constellation C_best as thesecond algorithm of FIG. 4 is performed, according to an exemplaryembodiment;

FIG. 28 illustrates a third algorithm according to an exemplaryembodiment for determining the optimal constellation at a given SNRvalue S in a Rician fading channel for a desired Rician factor K_rice;

FIG. 29 illustrates a fourth algorithm according to an exemplaryembodiment for determining the optimal constellation at a given SNRvalue S in a Rayleigh fading channel;

FIG. 30 illustrates a fifth algorithm according to an exemplaryembodiment for determining an optimal constellation;

FIG. 31 illustrates a process for obtaining an optimal constellation fora specific system, according to an exemplary embodiment;

FIG. 32 illustrates an exemplary BER versus SNR plot for 64-QAM using aLow-Density Parity-Check, LDPC, coding rate (CR) of 2/3 from DVB-T2 inan AWGN channel, according to an exemplary embodiment;

FIG. 33 illustrates a sixth algorithm according to an exemplaryembodiment for determining an optimal constellation;

FIG. 34 further illustrates the sixth algorithm illustrated in FIG. 33,according to an exemplary embodiment;

FIG. 35 illustrates a process for obtaining the waterfall SNR for acertain channel type according to an exemplary embodiment;

FIG. 36 schematically illustrates a process for obtaining a weightedperformance measure function for an input constellation based ondifferent transmission scenarios according to an exemplary embodiment;

FIG. 37 illustrates a process for obtaining an optimum constellationaccording to an exemplary embodiment;

FIGS. 38A and 38B illustrate alternative schemes for generating acandidate constellation from a previous constellation according toexemplary embodiments;

FIG. 39 illustrates a technique for reducing complexity according to anexemplary embodiment;

FIG. 40 illustrates an apparatus for implementing an algorithm accordingto an exemplary embodiment;

FIG. 41 is a block diagram to describe a configuration of a transmittingapparatus according to an exemplary embodiment;

FIG. 42 is a block diagram to describe a configuration of a receivingapparatus according to an exemplary embodiment;

FIG. 43 is a flowchart to describe a modulation method according to anexemplary embodiment;

FIG. 44 is a block diagram illustrating a configuration of a receivingapparatus according to an exemplary embodiment;

FIG. 45 is a block diagram illustrating a demodulator according to anexemplary embodiment; and

FIG. 46 is a flowchart provided to illustrate an operation of areceiving apparatus from a moment when a user selects a service untilthe selected service is reproduced, according to an exemplaryembodiment.

DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS

Various exemplary embodiments will now be described in greater detailwith reference to the accompanying drawings.

In the following description, same drawing reference numerals are usedfor the same elements even in different drawings. The matters defined inthe description, such as detailed construction and elements, areprovided to assist in a comprehensive understanding of the invention.Thus, it is apparent that the exemplary embodiments can be carried outwithout those specifically defined matters. Also, well-known functionsor constructions are not described in detail since they would obscurethe exemplary embodiments with unnecessary detail.

The following description of the exemplary embodiments with reference tothe accompanying drawings is provided to assist in a comprehensiveunderstanding of the inventive concept, as defined by the claims. Thedescription includes various specific details to assist in thatunderstanding but these are to be regarded as merely exemplary.Accordingly, those of ordinary skill in the art will recognize thatvarious changes and modifications of the embodiments described hereincan be made without departing from the scope of the inventive concept.

The same or similar components may be designated by the same or similarreference numerals, although they may be illustrated in differentdrawings.

Detailed descriptions of techniques, structures, constructions,functions or processes known in the art may be omitted for clarity andconciseness, and to avoid obscuring the subject matter of the exemplaryembodiments.

The terms and words used herein are not limited to the bibliographicalor standard meanings, but, are merely used by the inventors to enable aclear and consistent understanding of the exemplary embodiments.

Throughout the description and claims of this specification, the words“comprise”, “contain” and “include”, and variations thereof, for example“comprising”, “containing” and “including”, means “including but notlimited to”, and is not intended to (and does not) exclude otherfeatures, elements, components, integers, steps, operations, processes,functions, characteristics, and the like.

Throughout the description and claims of this specification, thesingular form, for example “a”, “an” and “the”, encompasses the pluralunless the context otherwise requires. For example, reference to “anobject” includes reference to one or more of such objects.

Throughout the description and claims of this specification, language inthe general form of “X for Y” (where Y is some action, process,function, activity or step and X is some means for carrying out thataction, process, function, activity or step) encompasses means Xadapted, configured or arranged specifically, but not necessarilyexclusively, to do Y.

Features, elements, components, integers, steps, operations, processes,functions, characteristics, and the like, described in conjunction witha particular aspect, embodiment, example or claim of the inventiveconcept are to be understood to be applicable to any other aspect,embodiment, example or claim described herein unless incompatibletherewith.

The exemplary embodiments may be implemented in the form of any suitablemethod, system and/or apparatus for use in digital broadcasting, forexample in the form of a mobile/portable terminal (e.g. mobiletelephone), hand-held device, personal computer, digital televisionand/or digital radio broadcast transmitter and/or receiver apparatus,set-top-box, etc. Any such system and/or apparatus may be compatiblewith any suitable existing or future digital broadcast system and/orstandard, for example one or more of the digital broadcasting systemsand/or standards referred to herein.

FIG. 1A is provided to explain transmitting apparatus according to anexemplary embodiment.

According to FIG. 1A, a transmitting apparatus 10000 according to anexemplary embodiment may include an Input Formatting Block(or part)11000, 11000-1, a BIT Interleaved and Coded Modulation (BICM) block12000, 12000-1, a Framing/Interleaving block 13000, 13000-1 and aWaveform Generation block 14000, 14000-1.

The transmitting apparatus 10000 according to an exemplary embodimentillustrated in FIG. 1A includes normative blocks shown by solid linesand informative blocks shown by dotted lines. Here, the blocks shown bysolid lines are normal blocks, and the blocks shown by dotted lines areblocks which may be used when implementing an informative MIMO.

The Input Formatting block 11000, 11000-1 generates a baseband frame(BBFRAME) from an input stream of data to be serviced. Herein, the inputstream may be a transport stream (TS), Internet protocol (IP) stream, ageneric stream (GS), a generic stream encapsulation (GSE), etc.

The BICM block 12000, 12000-1 determines a forward error correction(FEC) coding rate and a constellation order depending on a region wherethe data to be serviced will be transmitted (e.g., a fixed PHY frame ormobile PHY frame), and then, performs encoding. Signaling information onthe data to be serviced may be encoded through a separate BICM encoder(not illustrated) or encoded by sharing the BICM encoder 12000, 12000-1with the data to be serviced, depending on a system implementation.

The Framing/Interleaving block 13000, 13000-1 combines time interleaveddata with signaling information to generate a transmission frame.

The Waveform Generation block 14000, 14000-1 generates an OFDM signal inthe time domain on the generated transmission frame, modulates thegenerated OFDM signal to a radio frequency (RF) signal and transmits themodulated RF signal to a receiver.

FIGS. 1B and 1C are provided to explain methods of multiplexingaccording to an exemplary embodiment.

FIG. 1B illustrates a block diagram to implement a Time DivisionMultiplexing according to an exemplary embodiment.

In the TDM system architecture, there are four main blocks(or parts):the Input Formatting block 11000, the BICM block 12000, theFraming/Interleaving block 13000, and the Waveform Generation block14000.

Data is input and formatted in the Input Formatting block, and forwarderror correction applied and mapped to constellations in the BICM block12000. Interleaving, both time and frequency, and frame creation done inthe Framing/Interleaving block 13000. Subsequently, the output waveformis created in the Waveform Generation block 14000.

FIG. 2B illustrates a block diagram to implement a Layered DivisionMultiplexing (LDM) according to another exemplary embodiment.

In the LDM system architecture, there are several different blockscompared with the TDM system architecture. Specifically, there are twoseparate Input Formatting blocks 11000, 11000-1 and BICM blocks 12000,12000-1, one for each of the layers in LDM. These are combined beforethe Framing/Interleaving block 13000 in the LDM Injection block. TheWaveform Generation block 14000 is similar to TDM.

FIG. 2 is a block diagram which illustrates detailed configuration ofthe Input Formatting block illustrated in FIG. 1A.

As illustrated in FIG. 2, the Input Formatting block 11000 consists ofthree blocks which control packets distributed into PLPs. Specifically,the Input Formatting block 11000 includes a packet encapsulation andcompression block 11100, a baseband framing block 11200 and a schedulerblock 11300.

Input data packets input to the Input Formatting block 11000 can consistof various types, but at the encapsulation operation these differenttypes of packets become generic packets which configure baseband frames.Here, the format of generic packets is variable. It is possible toeasily extract the length of the generic packet from the packet itselfwithout additional information. The maximum length of the generic packetis 64 kB. The maximum length of the generic packet, including header, isfour bytes. Generic packets must be of integer byte length.

The scheduler 11200 receives an input stream of encapsulated genericpackets and forms them into physical layer pipes (PLPs), in the form ofbaseband frames. In the above-mentioned TDM system there may be only onePLP, called single PLP or S-PLP, or there may be multiple PLPs, calledM-PLP. One service cannot use more than four PLPs. In the case of an LDMsystem consisting of two layers, two PLPs are used, one for each layer.

The scheduler 11200 receives encapsulated input packet streams anddirects how these packets are allocated to physical layer resources.Specifically, the scheduler 11200 directs how the baseband framing blockwill output baseband frames.

The functional assets of the Scheduler 11200 are defined by data size(s)and time(s). The physical layer can deliver portions of data at thesediscrete times. The scheduler 11200 uses the inputs and informationincluding encapsulated data packets, quality of service metadata for theencapsulated data packets, a system buffer model, constraints andconfiguration from system management, and creates a conforming solutionin terms of configuration of the physical layer parameters. Thecorresponding solution is subject to the configuration and controlparameters and the aggregate spectrum available.

Meanwhile, the operation of the Scheduler 11200 is constrained bycombination of dynamic, quasi-static, and static configurations. Thedefinition of these constraints is left to implementation.

In addition, for each service a maximum of four PLPs shall be used.Multiple services consisting of multiple time interleaving blocks may beconstructed, up to a total maximum of 64 PLPs for bandwidths of 6, 7 or8 MHz. The baseband framing block 11300, as illustrated in FIG. 3A,consists of three blocks, baseband frame construction 3100, 3100-1, . .. 3100-n, baseband frame header construction block 3200, 3200-1, . . .3200-n, and the baseband frame scrambling block 3300, 3300-1, . . .3300-n. In a M-PLP operation, the baseband framing block createsmultiple PLPs as necessary.

A baseband frame 3500, as illustrated in FIG. 3B, consists of a basebandframe header 3500-1 and payload 3500-2 consisting of generic packets.Baseband frames have fixed length K_(payload). Generic packets 3610-3650shall be mapped to baseband frames 3500 in order. If generic packets3610-3650 do not completely fit within a baseband frame, packets aresplit between the current baseband frame and the next baseband frame.Packet splits shall be in byte units only.

The baseband frame header construction block 3200, 3200-1, . . . 3200-nconfigures the baseband frame header. The baseband frame header 3500-1,as illustrated in FIG. 3B, is composed of three parts, including thebase header 3710, the optional header(or option field 3720) and theextension field 3730. Here, the base header 3710 appears in everybaseband frame, and the optional header 3720 and the extension field3730 may not be present in every time.

The main feature of the base header 3710 is to provide a pointerincluding an offset value in bytes as an initiation of the next genericpacket within the baseband frame. When the generic packet initiates thebaseband frame, the pointer value becomes zero. If there is no genericpacket which is initiated within the baseband frame, the pointer valueis 8191, and a 2-byte base header may be used.

The extension field (or extension header) 3730 may be used later, forexample, for the baseband frame packet counter, baseband frame timestamping, and additional signaling, etc.

The baseband frame scrambling block 3300, 3300-1, . . . 3300-n scramblesthe baseband frame.

In order to ensure that the payload data when mapped to constellationsdoes not always map to the same point, such as when the payload mappedto constellations consists of a repetitive sequence, the payload datashall always be scrambled before forward error correction encoding.

The scrambling sequences shall be generated by a 16-bit shift registerthat has 9 feedback taps. Eight of the shift register outputs areselected as a fixed randomizing byte, where each bit from t his byte isused to individually XOR the corresponding input data. The data bits areXORed MSB to MSB and so on until LSB to LSB. The generator polynomial isG(x)=1+X+X³+X⁶+X⁷+X¹¹+X¹²+X¹³+X¹⁶.

FIG. 4 illustrates a shift register of a PRBS encoder for scrambling abaseband according to an exemplary embodiment, wherein loading of thesequence into the PRBS register, as illustrated in FIG. 4 and shall beinitiated at the start of every baseband frame.

FIG. 5 is a block diagram provided to explain detailed configuration ofthe BICM block illustrated in FIG. 1A.

As illustrated in FIG. 5, the BICM block includes the FEC block 14100,14100-1, . . . , 14100-n, Bit Interleaver block 14200, 14200-1, . . . ,14200-n and Mapper blocks 14300, 14300-1, . . . , 14300-n.

The input to the FEC block 1400, 14100-1, . . . , 14100-n is a Basebandframe, of length K_(payload), and the output from the FEC block is a FECframe. The FEC block 14100, 14100-1, . . . , 14100-n is implemented byconcatenation of an outer code and an innter code with the informationpart. The FEC frame has length N_(inner). There are two differentlengths of LDPC code defined: N_(inner)=64800 bits and N_(inner)=16200bits

The outer code is realized as one of either Bose, Ray-Chaudhuri andHocquenghem (BCH) outer code, a Cyclic Redundancy Check (CRC) or othercode. The inner code is realized as a Low Density Parity Check (LDPC)code. Both BCH and LDPC FEC codes are systematic codes where theinformation part I contained within the codeword. The resulting codewordis thus a concatenation of information or payload part, BCH or CRCparities and LDPC parities, as shown in FIG. 6A.

The use of LDPC code is mandatory and is used to provide the redundancyneeded for the code detection. There are two different LDPC structuresthat are defined, these are called Type A and Type B. Type A has a codestructure that shows better performance at low code rates while Type Bcode structure shows better performance at high code rates. In generalN_(inner)=64800 bit codes are expected to be employed. However, forapplications where latency is critical, or a simpler encoder/decoderstructure is preferred, N_(inner)=16200 bit codes may also be used.

The outer code and CRC consist of adding M_(outer) bits to the inputbaseband frame. The outer BCH code is used to lower the inherent LDPCerror floor by correcting a predefined number of bit errors. When usingBCH codes the length of M_(outer) is 192 bits (N_(inner)=64800 bitcodes) and 168 bits (for N_(inner)=16200 bit codes). When using CRC thelength of M_(outer) is 32 bits. When neither BCH nor CRC are used thelength of M_(outer) is zero. The outer code may be omitted if it isdetermined that the error correcting capability of the inner code issufficient for the application. When there is no outer code thestructure of the FEC frame is as shown in FIG. 6B.

FIG. 7 is a block diagram provided to explain detailed configuration ofthe Bit Interleaver block illustrated in FIG. 5.

The LDPC codeword of the LDPC encoder, i.e., a FEC Frame, shall be bitinterleaved by a Bit Interleaver block 14200. The Bit Interleaver block14200 includes a parity interleaver 14210, a group-wise interleaver14220 and a block interleaver 14230. Here, the parity interleaver is notused for Type A and is only used for Type B codes.

The parity interleaver 14210 converts the staircase structure of theparity-part of the LDPC parity-check matrix into a quasi-cyclicstructure similar to the information-part of the matrix.

Meanwhile, the parity interleaved LDPC coded bits are split intoN_(group)=N_(inner)/360 bit groups, and the group-wise interleaver 14220rearranges the bit groups.

The block interleaver 14230 block interleaves the group-wise interleavedLDPC codeword.

Specifically, the block interleaver 14230 divides a plurality of columnsinto part 1 and part 2 based on the number of columns of the blockinterleaver 14230 and the number of bits of the bit groups. In addition,the block interleaver 14230 writes the bits into each column configuringpart 1 column wise, and subsequently writes the bits into each columnconfiguring part 2 column wise, and then reads out row wise the bitswritten in each column.

In this case, the bits constituting the bit groups in the part 1 may bewritten into the same column, and the bits constituting the bit groupsin the part 2 may be written into at least two columns.

Back to FIG. 5, the Mapper block 14300, 14300-1, . . . , 14300-n mapsFEC encoded and bit interleaved bits to complex valued quadratureamplitude modulation (QAM) constellation points. For the highestrobustness level, quaternary phase shift keying (QPSK) is used. Forhigher order constellations (16-QAM up to 4096-QAM), non-uniformconstellations are defined and the constellations are customized foreach code rate.

Each FEC frame shall be mapped to a FEC block by first de-multiplexingthe input bits into parallel data cell words and then mapping these cellwords into constellation values.

FIG. 8 is a block diagram provided to explain detailed configuration ofa Framing/Interleaving block illustrated in FIG. 1A.

As illustrated in FIG. 8, the Framing/Interleaving block 14300 includesa time interleaving block 14310, a framing block 14320 and a frequencyinterleaving block 14330.

The input to the time interleaving block 14310 and the framing block14320 may consist of M-PLPs however the output of the framing block14320 is OFDM symbols, which are arranged in frames. The frequencyinterleaver included in the frequency interleaving block 14330 operatesan OFDM symbols.

The time interleaver (TI) configuration included in the timeinterleaving block 14310 depends on the number of PLPs used. When thereis only a single PLP or when LDM is used, a sheer convolutionalinterleaver is used, while for multiple PLP a hybrid interleaverconsisting of a cell interleaver, a block interleaver and aconvolutional interleaver is used. The input to the time interleavingblock 14310 is a stream of cells output from the mapper block (FIG. 5,14300, 14300-1, . . . , 14300-n), and the output of the timeinterleaving block 14310 is also a stream of time-interleaved cells.

FIG. 9A illustrates the time interleaving block for a single PLP(S-PLP), and it consists of a convolutional interleaver only.

FIG. 9B illustrates the time interleaving block for a plurality of PLPs(M-PLP), and it can be divided in several sub-blocks as illustrated.

The framing block 14320 maps the interleaved frames onto at least onetransmitter frame. The framing block 14320, specifically, receivesinputs (e.g. data cell) from at least one physical layer pipes andoutputs symbols.

In addition, the framing block 14320 creates at least one special symbolknown as preamble symbols. These symbols undergo the same processing inthe waveform block mentioned later.

FIG. 10 is a view illustrating an example of a transmission frameaccording to an exemplary embodiment.

As illustrated in FIG. 10, the transmission frame consists of threeparts, the bootstrap, preamble and data payload. Each of the three partsconsists of at least one symbol.

Meanwhile, the purpose of the frequency interleaving block 14330 is toensure that sustained interference in one part of the spectrum will notdegrade the performance of a particular PLP disproportionately comparedto other PLPs. The frequency interleaver 14330, operating on the all thedata cells of one OFDM symbol, maps the data cells from the framiningblock 14320 onto the N data carriers.

FIG. 11 is a block diagram provided to explain detailed configuration ofa Waveform Generation block illustrated in FIG. 1A.

As illustrated in FIG. 11, the Waveform Generation block 14000 includesa pilot inserting block 14100, a MISO block 14200, an IFFT block 14300,a PAPR block 14400, a GI inserting block 14500 and a bootstrap block14600.

The pilot inserting block 14100 inserts a pilot to various cells withinthe OFDM frame.

Various cells within the OFDM frame are modulated with referenceinformation whose transmitted value is known to the receiver.

Cells containing the reference information are transmitted at a boostedpower level. The cells are called scattered, continual, edge, preambleor frame-closing pilot cells. The value of the pilot information isderived from a reference sequence, which is a series of values, one foreach transmitted carrier on any given symbol.

The pilots can be used for frame synchronization, frequencysynchronization, time synchronization, channel estimation, transmissionmode identification and can also be used to follow the phase noise.

The pilots are modulated according to reference information, and thereference sequence is applied to all the pilots (e.g. scattered,continual edge, preamble and frame closing pilots) in every symbolincluding preamble and the frame-closing symbol of the frame.

The reference information, taken from the reference sequence, istransmitted in scattered pilot cells in every symbol except the preambleand the frame-closing symbol of the frame.

In addition to the scattered pilots described above, a number ofcontinual pilots are inserted in every symbol of the frame except forPreamble and the frame-closing symbol. The number and location ofcontinual pilots depends on both the FFT size and scattered pilotpattern in use.

The MISO block 14200 applies a MISO processing.

The Transmit Diversity Code Filter Set is a MISO pre-distortiontechnique that artificially decorrelates signals from multipletransmitters in a Single Frequency Network in order to minimizepotential destructive interference. Linear frequency domain filters areused so that the compensation in the receiver can be implemented as partof the equalizer process. The filter design is based on creatingall-pass filters with minimized cross-correlation over all filter pairsunder the constraints of the number of transmitters M ∈ {2,3,4} and thetime domain span of the filters N ∈ {64,256}. The longer time domainspan filters will increase the decorrelation level, but the effectiveguard interval length will be decreased by the filter time domain spanand this should be taken into consideration when choosing a filter setfor a particular network topology.

The IFFT block 14300 specifies the OFDM structure to use for eachtransmission mode. The transmitted signal is organized in frames. Eachframe has a duration of T_(F), and consists of L_(F) OFDM symbols. Nframes constitute one super-frame. Each symbol is constituted by a setof K_(total) carriers transmitted with a duration T_(S). Each symbol iscomposed of a useful part with duration T_(U) and a guard interval witha duration Δ. The guard interval consists of a cyclic continuation ofthe useful part, T_(U), and is inserted before it.

The PAPR block 14400 applies the Peak to Average Power Reductiontechnique.

The GI inserting block 14500 inserts the guard interval into each frame.

The bootstrap block 14600 prefixes the bootstrap signal to the front ofeach frame.

FIG. 12 is a block diagram provided to explain a configuration ofsignaling information according to an exemplary embodiment.

The input processing block 11000 includes a scheduler 11200. The BICMblock 15000 includes an L1 signaling generator 15100, an FEC encoder15200-1 and 15200-2, a bit interleaver 15300-2, a demux 15400-2,constellation mappers 15500-1 and 15500-2. The L1 signaling generator15100 may be included in the input processing block 11000, according toan exemplary embodiment.

An n number of service data are mapped to a PLP0 to a PLPn respectively.The scheduler 11200 determines a position, modulation and coding ratefor each PLP in order to map a plurality of PLPs to a physical layer ofT2. In other words, the scheduler 11200 generates L1 signalinginformation. The scheduler 11200 may output dynamic field informationamong L1 post signaling information of a current frame, using theraming/Interleaving block 13000 (FIG. 1) which may be referred to as aframe builder. Further, the scheduler 11200 may transmit the L1signaling information to the BICM block 15000. The L1 signalinginformation includes L1 pre signaling information and L1 post signalinginformation.

The L1 signaling generator 15100 may differentiate the L1 pre signalinginformation from the L1 post signaling information to output them. TheFEC encoders 15200-1 and 15200-2 perform respective encoding operationswhich include shortening and puncturing for the L1 pre signalinginformation and the L1 post signaling information. The bit interleaver15300-2 performs interleaving by bit for the encoded L1 post signalinginformation. The demux 15400-2 controls robustness of bits by modifyingan order of bits constituting cells and outputs the cells which includebits. Two constellation mappers 15500-1 and 15500-2 map the L1 presignaling information and the L1 post signaling information toconstellations, respectively. The L1 pre signaling information and theL1 post signaling information processed through the above describedprocesses are output to be included in each frame by theFraming/Interleaving block 13000 (FIG. 1).

FIG. 13 illustrates a structure of an receiving apparatus according toan embodiment of the present invention.

The apparatus 20000 for receiving broadcast signals according to anembodiment of the present invention can correspond to the apparatus10000 for transmitting broadcast signals, described with reference toFIG. 1. The apparatus 20000 for receiving broadcast signals according toan embodiment of the present invention can include a synchronization &demodulation module 21000, a frame parsing module 22000, a demapping &decoding module 23000, an output processor 24000 and a signalingdecoding module 25000. A description will be given of operation of eachmodule of the apparatus 20000 for receiving broadcast signals.

The synchronization & demodulation module 21000 can receive inputsignals through m Rx antennas, perform signal detection andsynchronization with respect to a system corresponding to the apparatus20000 for receiving broadcast signals and carry out demodulationcorresponding to a reverse procedure of the procedure performed by theapparatus 10000 for transmitting broadcast signals.

The frame parsing module 22000 can parse input signal frames and extractdata through which a service selected by a user is transmitted. If theapparatus 10000 for transmitting broadcast signals performsinterleaving, the frame parsing module 22000 can carry outdeinterleaving corresponding to a reverse procedure of interleaving. Inthis case, the positions of a signal and data that need to be extractedcan be obtained by decoding data output from the signaling decodingmodule 25200 to restore scheduling information generated by theapparatus 10000 for transmitting broadcast signals.

The demapping & decoding module 23000 can convert the input signals intobit domain data and then deinterleave the same as necessary. Thedemapping & decoding module 23000 can perform demapping for mappingapplied for transmission efficiency and correct an error generated on atransmission channel through decoding. In this case, the demapping &decoding module 23000 can obtain transmission parameters necessary fordemapping and decoding by decoding the data output from the signalingdecoding module 25000.

The output processor 24000 can perform reverse procedures of variouscompression/signal processing procedures which are applied by theapparatus 10000 for transmitting broadcast signals to improvetransmission efficiency. In this case, the output processor 24000 canacquire necessary control information from data output from thesignaling decoding module 25000. The output of the output processor24000 corresponds to a signal input to the apparatus 10000 fortransmitting broadcast signals and may be MPEG-TSs, IP streams (v4 orv6) and generic streams.

The signaling decoding module 25000 can obtain PLS information from thesignal demodulated by the synchronization & demodulation module 21000.As described above, the frame parsing module 22000, demapping & decodingmodule 23000 and output processor 24000 can execute functions thereofusing the data output from the signaling decoding module 25000.

FIG. 14 illustrates a synchronization & demodulation module according toan embodiment of the present invention.

As shown in FIG. 14, the synchronization & demodulation module 21000according to an embodiment of the present invention corresponds to asynchronization & demodulation module of an apparatus 20000 forreceiving broadcast signals using m Rx antennas and can include mprocessing blocks for demodulating signals respectively input through mpaths. The m processing blocks can perform the same processingprocedure. A description will be given of operation of the firstprocessing block 21000 from among the m processing blocks.

The first processing block 21000 can include a tuner 21100, an ADC block21200, a preamble detector 21300, a guard sequence detector 21400, awaveform transform block 21500, a time/frequency synchronization block21600, a reference signal detector 21700, a channel equalizer 21800 andan inverse waveform transform block 21900.

The tuner 21100 can select a desired frequency band, compensate for themagnitude of a received signal and output the compensated signal to theADC block 21200.

The ADC block 21200 can convert the signal output from the tuner 21100into a digital signal.

The preamble detector 21300 can detect a preamble (or preamble signal orpreamble symbol) in order to check whether or not the digital signal isa signal of the system corresponding to the apparatus 20000 forreceiving broadcast signals. In this case, the preamble detector 21300can decode basic transmission parameters received through the preamble.

The guard sequence detector 21400 can detect a guard sequence in thedigital signal. The time/frequency synchronization block 21600 canperform time/frequency synchronization using the detected guard sequenceand the channel equalizer 21800 can estimate a channel through areceived/restored sequence using the detected guard sequence.

The waveform transform block 21500 can perform a reverse operation ofinverse waveform transform when the apparatus 10000 for transmittingbroadcast signals has performed inverse waveform transform. When thebroadcast transmission/reception system according to one embodiment ofthe present invention is a multi-carrier system, the waveform transformblock 21500 can perform FFT. Furthermore, when the broadcasttransmission/reception system according to an embodiment of the presentinvention is a single carrier system, the waveform transform block 21500may not be used if a received time domain signal is processed in thefrequency domain or processed in the time domain.

The time/frequency synchronization block 21600 can receive output dataof the preamble detector 21300, guard sequence detector 21400 andreference signal detector 21700 and perform time synchronization andcarrier frequency synchronization including guard sequence detection andblock window positioning on a detected signal. Here, the time/frequencysynchronization block 21600 can feed back the output signal of thewaveform transform block 21500 for frequency synchronization.

The reference signal detector 21700 can detect a received referencesignal. Accordingly, the apparatus 20000 for receiving broadcast signalsaccording to an embodiment of the present invention can performsynchronization or channel estimation.

The channel equalizer 21800 can estimate a transmission channel fromeach Tx antenna to each Rx antenna from the guard sequence or referencesignal and perform channel equalization for received data using theestimated channel.

The inverse waveform transform block 21900 may restore the originalreceived data domain when the waveform transform block 21500 performswaveform transform for efficient synchronization and channelestimation/equalization. If the broadcast transmission/reception systemaccording to an embodiment of the present invention is a single carriersystem, the waveform transform block 21500 can perform FFT in order tocarry out synchronization/channel estimation/equalization in thefrequency domain and the inverse waveform transform block 21900 canperform IFFT on the channel-equalized signal to restore transmitted datasymbols. If the broadcast transmission/reception system according to anembodiment of the present invention is a multi-carrier system, theinverse waveform transform block 21900 may not be used.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

FIG. 15 illustrates a frame parsing module according to an embodiment ofthe present invention.

As shown in FIG. 15, the frame parsing module 22000 according to anembodiment of the present invention can include at least one blockinterleaver 22100 and at least one cell demapper 22200.

The block interleaver 22100 can deinterleave data input through datapaths of the m Rx antennas and processed by the synchronization &demodulation module 21000 on a signal block basis. In this case, if theapparatus 10000 for transmitting broadcast signals performs pair-wiseinterleaving, the block interleaver 22100 can process two consecutivepieces of data as a pair for each input path. Accordingly, the blockinterleaver 22100 can output two consecutive pieces of data even whendeinterleaving has been performed. Furthermore, the block interleaver22100 can perform a reverse operation of the interleaving operationperformed by the apparatus 10000 for transmitting broadcast signals tooutput data in the original order.

The cell demapper 22200 can extract cells corresponding to common data,cells corresponding to data pipes and cells corresponding to PLS datafrom received signal frames. The cell demapper 22200 can merge datadistributed and transmitted and output the same as a stream asnecessary. When two consecutive pieces of cell input data are processedas a pair and mapped in the apparatus 10000 for transmitting broadcastsignals, the cell demapper 22200 can perform pair-wise cell demappingfor processing two consecutive input cells as one unit as a reverseprocedure of the mapping operation of the apparatus 10000 fortransmitting broadcast signals.

In addition, the cell demapper 22200 can extract PLS signaling datareceived through the current frame as PLS-pre & PLS-post data and outputthe PLS-pre & PLS-post data.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

FIG. 16 illustrates a demapping & decoding module according to anembodiment of the present invention.

The demapping & decoding module 23000 shown in FIG. 16 can perform areverse operation of the operation of the bit interleaved and coded &modulation module illustrated in FIG. 1.

The bit interleaved and coded & modulation module of the apparatus 10000for transmitting broadcast signals according to an embodiment of thepresent invention can process input data pipes by independently applyingSISO, MISO and MIMO thereto for respective paths, as described above.Accordingly, the demapping & decoding module 23000 illustrated in FIG.16 can include blocks for processing data output from the frame parsingmodule according to SISO, MISO and MIMO in response to the apparatus10000 for transmitting broadcast signals.

As shown in FIG. 16, the demapping & decoding module 23000 according toan embodiment of the present invention can include a first block 23100for SISO, a second block 23200 for MISO, a third block 23300 for MIMOand a fourth block 23400 for processing the PLS-pre/PLS-postinformation. The demapping & decoding module 23000 shown in FIG. 16 isexemplary and may include only the first block 23100 and the fourthblock 23400, only the second block 23200 and the fourth block 23400 oronly the third block 23300 and the fourth block 23400 according todesign. That is, the demapping & decoding module 23000 can includeblocks for processing data pipes equally or differently according todesign.

A description will be given of each block of the demapping & decodingmodule 23000.

The first block 23100 processes an input data pipe according to SISO andcan include a time deinterleaver block 23110, a cell deinterleaver block23120, a constellation demapper block 23130, a cell-to-bit mux block23140, a bit deinterleaver block 23150 and an FEC decoder block 23160.

The time deinterleaver block 23110 can perform a reverse process of theprocess performed by the time interleaving block 14310 illustrated inFIG. 8. That is, the time deinterleaver block 23110 can deinterleaveinput symbols interleaved in the time domain into original positionsthereof.

The cell deinterleaver block 23120 can perform a reverse process of theprocess performed by the cell interleaver block illustrated in FIG. 9a .That is, the cell deinterleaver block 23120 can deinterleave positionsof cells spread in one FEC block into original positions thereof. Thecell deinterleaver block 23120 may be omitted.

The constellation demapper block 23130 can perform a reverse process ofthe process performed by the mapper 12300 illustrated in FIG. 5. Thatis, the constellation demapper block 23130 can demap a symbol domaininput signal to bit domain data. In addition, the constellation demapperblock 23130 may perform hard decision and output decided bit data.Furthermore, the constellation demapper block 23130 may output alog-likelihood ratio (LLR) of each bit, which corresponds to a softdecision value or probability value. If the apparatus 10000 fortransmitting broadcast signals applies a rotated constellation in orderto obtain additional diversity gain, the constellation demapper block23130 can perform 2-dimensional LLR demapping corresponding to therotated constellation. Here, the constellation demapper block 23130 cancalculate the LLR such that a delay applied by the apparatus 10000 fortransmitting broadcast signals to the I or Q component can becompensated.

The cell-to-bit mux block 23140 can perform a reverse process of theprocess performed by the mapper 12300 illustrated in FIG. 5. That is,the cell-to-bit mux block 23140 can restore bit data mapped to theoriginal bit streams.

The bit deinterleaver block 23150 can perform a reverse process of theprocess performed by the bit interleaver 12200 illustrated in FIG. 5.That is, the bit deinterleaver block 23150 can deinterleave the bitstreams output from the cell-to-bit mux block 23140 in the originalorder.

The FEC decoder block 23460 can perform a reverse process of the processperformed by the FEC encoder 12100 illustrated in FIG. 5. That is, theFEC decoder block 23460 can correct an error generated on a transmissionchannel by performing LDPC decoding and BCH decoding.

The second block 23200 processes an input data pipe according to MISOand can include the time deinterleaver block, cell deinterleaver block,constellation demapper block, cell-to-bit mux block, bit deinterleaverblock and FEC decoder block in the same manner as the first block 23100,as shown in FIG. 16. However, the second block 23200 is distinguishedfrom the first block 23100 in that the second block 23200 furtherincludes a MISO decoding block 23210. The second block 23200 performsthe same procedure including time deinterleaving operation to outputtingoperation as the first block 23100 and thus description of thecorresponding blocks is omitted.

The MISO decoding block 11110 can perform a reverse operation of theoperation of the MISO processing in the apparatus 10000 for transmittingbroadcast signals. If the broadcast transmission/reception systemaccording to an embodiment of the present invention uses STBC, the MISOdecoding block 11110 can perform Alamouti decoding.

The third block 23300 processes an input data pipe according to MIMO andcan include the time deinterleaver block, cell deinterleaver block,constellation demapper block, cell-to-bit mux block, bit deinterleaverblock and FEC decoder block in the same manner as the second block23200, as shown in FIG. 16. However, the third block 23300 isdistinguished from the second block 23200 in that the third block 23300further includes a MIMO decoding block 23310. The basic roles of thetime deinterleaver block, cell deinterleaver block, constellationdemapper block, cell-to-bit mux block and bit deinterleaver blockincluded in the third block 23300 are identical to those of thecorresponding blocks included in the first and second blocks 23100 and23200 although functions thereof may be different from the first andsecond blocks 23100 and 23200.

The MIMO decoding block 23310 can receive output data of the celldeinterleaver for input signals of the m Rx antennas and perform MIMOdecoding as a reverse operation of the operation of the MIMO processingin the apparatus 10000 for transmitting broadcast signals. The MIMOdecoding block 23310 can perform maximum likelihood decoding to obtainoptimal decoding performance or carry out sphere decoding with reducedcomplexity. Otherwise, the MIMO decoding block 23310 can achieveimproved decoding performance by performing MMSE detection or carryingout iterative decoding with MMSE detection.

The fourth block 23400 processes the PLS-pre/PLS-post information andcan perform SISO or MISO decoding.

The basic roles of the time deinterleaver block, cell deinterleaverblock, constellation demapper block, cell-to-bit mux block and bitdeinterleaver block included in the fourth block 23400 are identical tothose of the corresponding blocks of the first, second and third blocks23100, 23200 and 23300 although functions thereof may be different fromthe first, second and third blocks 23100, 23200 and 23300.

The shortened/punctured FEC decoder 23410 can perform de-shortening andde-puncturing on data shortened/punctured according to PLS data lengthand then carry out FEC decoding thereon. In this case, the FEC decoderused for data pipes can also be used for PLS. Accordingly, additionalFEC decoder hardware for the PLS only is not needed and thus systemdesign is simplified and efficient coding is achieved.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

The demapping & decoding module according to an embodiment of thepresent invention can output data pipes and PLS information processedfor the respective paths to the output processor, as illustrated in FIG.16.

FIGS. 17 and 18 illustrate output processors according to embodiments ofthe present invention.

FIG. 17 illustrates an output processor 24000 according to an embodimentof the present invention. The output processor 24000 illustrated in FIG.17 receives a single data pipe output from the demapping & decodingmodule and outputs a single output stream.

The output processor 24000 shown in FIG. 17 can include a BB scramblerblock 24100, a padding removal block 24200, a CRC-8 decoder block 24300and a BB frame processor block 24400.

The BB scrambler block 24100 can descramble an input bit stream bygenerating the same PRBS as that used in the apparatus for transmittingbroadcast signals for the input bit stream and carrying out an XORoperation on the PRBS and the bit stream.

The padding removal block 24200 can remove padding bits inserted by theapparatus for transmitting broadcast signals as necessary.

The CRC-8 decoder block 24300 can check a block error by performing CRCdecoding on the bit stream received from the padding removal block24200.

The BB frame processor block 24400 can decode information transmittedthrough a BB frame header and restore MPEG-TSs, IP streams (v4 or v6) orgeneric streams using the decoded information.

The above-described blocks may be omitted or replaced by blocks havingsimilar or identical functions according to design.

FIG. 18 illustrates an output processor according to another embodimentof the present invention. The output processor 24000 shown in FIG. 18receives multiple data pipes output from the demapping & decodingmodule. Decoding multiple data pipes can include a process of mergingcommon data commonly applicable to a plurality of data pipes and datapipes related thereto and decoding the same or a process ofsimultaneously decoding a plurality of services or service components(including a scalable video service) by the apparatus for receivingbroadcast signals.

The output processor 24000 shown in FIG. 18 can include a BB descramblerblock, a padding removal block, a CRC-8 decoder block and a BB frameprocessor block as the output processor illustrated in FIG. 17. Thebasic roles of these blocks correspond to those of the blocks describedwith reference to FIG. 17 although operations thereof may differ fromthose of the blocks illustrated in FIG. 17.

A de-jitter buffer block 24500 included in the output processor shown inFIG. 18 can compensate for a delay, inserted by the apparatus fortransmitting broadcast signals for synchronization of multiple datapipes, according to a restored TTO (time to output) parameter.

A null packet insertion block 24600 can restore a null packet removedfrom a stream with reference to a restored DNP (deleted null packet) andoutput common data.

A TS clock regeneration block 24700 can restore time synchronization ofoutput packets based on ISCR (input stream time reference) information.

A TS recombining block 24800 can recombine the common data and datapipes related thereto, output from the null packet insertion block24600, to restore the original MPEG-TSs, IP streams (v4 or v6) orgeneric streams. The TTO, DNT and ISCR information can be obtainedthrough the BB frame header.

An in-band signaling decoding block 24900 can decode and output in-bandphysical layer signaling information transmitted through a padding bitfield in each FEC frame of a data pipe.

The output processor shown in FIG. 18 can BB-descramble the PLS-preinformation and PLS-post information respectively input through aPLS-pre path and a PLS-post path and decode the descrambled data torestore the original PLS data. The restored PLS data is delivered to asystem controller included in the apparatus for receiving broadcastsignals. The system controller can provide parameters necessary for thesynchronization & demodulation module, frame parsing module, demapping &decoding module and output processor module of the apparatus forreceiving broadcast signals.

The above-described blocks may be omitted or replaced by blocks havingsimilar r identical functions according to design.

Hereinafter, a method of interleaving of the block interleaver 14230 ofFIG. 7 will be described

The block interleaver 14230 interleaves the plurality of bit groups theorder of which has been rearranged. Specifically, the block interleaver14230 may interleave the plurality of bit groups the order of which hasbeen rearranged by the group-wise interleaver 14220 in bit group wise(or bits group unit). The block interleaver 14230 is formed of aplurality of columns each including a plurality of rows and mayinterleave by dividing the plurality of rearranged bit groups based on amodulation order determined according to a modulation method.

In this case, the block interleaver 14230 may interleave the pluralityof bit groups the order of which has been rearranged by the group-wiseinterleaver 14220 in bit group wise. Specifically, the block interleaver14230 may interleave by dividing the plurality of rearranged bit groupsaccording to a modulation order by using a first part and a second part.

Specifically, the block interleaver 14230 interleaves by dividing eachof the plurality of columns into a first part and a second part, writingthe plurality of bit groups in the plurality of columns of the firstpart serially in bit group wise, dividing the bits of the other bitgroups into groups (or sub bit groups) each including a predeterminednumber of bits based on the number of columns, and writing the sub bitgroups in the plurality of columns of the second part serially.

Herein, the number of bit groups which are interleaved in bit group wisemay be determined by at least one of the number of rows and columnsconstituting the block interleaver 14230, the number of bit groups andthe number of bits included in each bit group. In other words, the blockinterleaver 14230 may determine the bit groups which are to beinterleaved in bit group wise considering at least one of the number ofrows and columns constituting the block interleaver 14230, the number ofbit groups and the number of bits included in each bit group, interleavethe corresponding bit groups in bit group wise, and divide bits of theother bit groups into sub bit groups and interleave the sub bit groups.For example, the block interleaver 14230 may interleave at least part ofthe plurality of bit groups in bit group wise using the first part, anddivide bits of the other bit groups into sub bit groups and interleavethe sub bit groups using the second part.

Meanwhile, interleaving bit groups in bit group wise means that the bitsincluded in the same bit group are written in the same column. In otherwords, the block interleaver 14230, in case of bit groups which areinterleaved in bit group wise, may not divide the bits included in thesame bit groups and write the bits in the same column, and in case ofbit groups which are not interleaved in bit group wise, may divide thebits in the bit groups and write the bits in different columns.

Accordingly, the number of rows constituting the first part is amultiple of the number of bits included in one bit group (for example,360), and the number of rows constituting the second part may be lessthan the number of bits included in one bit group.

In addition, in all bit groups interleaved by the first part, the bitsincluded in the same bit group are written and interleaved in the samecolumn of the first part, and in at least one group interleaved by thesecond part, the bits are divided and written in at least two columns ofthe second part.

As described above, the block interleaver 14230 may interleave theplurality of bit groups by using the plurality of columns each includingthe plurality of rows.

In this case, the block interleaver 14230 may interleave the LDPCcodeword by dividing the plurality of columns into at least two parts.For example, the block interleaver 14230 may divide each of theplurality of columns into the first part and the second part andinterleave the plurality of bit groups constituting the LDPC codeword.

In this case, the block interleaver 14230 may divide each of theplurality of columns into N number of parts (N is an integer greaterthan or equal to 2) according to whether the number of bit groupsconstituting the LDPC codeword is an integer multiple of the number ofcolumns constituting the block interleaver 14230, and may performinterleaving.

When the number of bit groups constituting the LDPC codeword is aninteger multiple of the number of columns constituting the blockinterleaver 14230, the block interleaver 14230 may interleave theplurality of bit groups constituting the LDPC codeword in bit group wisewithout dividing each of the plurality of columns into parts.

Specifically, the block interleaver 14230 may interleave by writing theplurality of bit groups of the LDPC codeword on each of the columns inbit group wise in a column direction, and reading each row of theplurality of columns in which the plurality of bit groups are written inbit group wise in a row direction.

In this case, the block interleaver 14230 may interleave by writing bitsincluded in a predetermined number of bit groups, which corresponds to aquotient obtained by dividing the number of bit groups of the LDPCcodeword by the number of columns of the block interleaver 14230, oneach of the plurality of columns serially in a column direction, andreading each row of the plurality of columns in which the bits arewritten in a row direction.

Hereinafter, the group located in the j^(th) position after beinginterleaved by the group interleaver 14220 will be referred to as groupY_(j).

For example, it is assumed that the block interleaver 14230 is formed ofC number of columns each including R₁ number of rows. In addition, it isassumed that the LDPC codeword is formed of N_(group) number of bitgroups and the number of bit groups N_(group) is a multiple of C.

In this case, when the quotient obtained by dividing N_(group) number ofbit groups constituting the LDPC codeword by C number of columnsconstituting the block interleaver 14230 is A (=N_(group)/C) (A is aninteger greater than 0), the block interleaver 14230 may interleave bywriting A (=N_(group)/C) number of bit groups on each column serially ina column direction and reading bits written on each column in a rowdirection.

For example, as shown in FIG. 19, the block interleaver 14230 writesbits included in bit group Y₀, bit group Y₁, . . . , bit group Y_(A-1)in the 1^(st) column from the 1^(st) row to the R₁ ^(th) row, writesbits included in bit group Y_(A), bit group Y_(A+1), . . . , bit groupY_(2A-1) in the 2nd column from the 1^(st) row to the R₁ ^(th) row, . .. , and writes bits included in bit group Y_(CA-A), bit groupY_(CA-A+1), . . . , bit group Y_(CA-1) in the column C from the 1^(st)row to the R₁ ^(th) row. The block interleaver 14230 may read the bitswritten in each row of the plurality of columns in a row direction.

Accordingly, the block interleaver 14230 interleaves all bit groupsconstituting the LDPC codeword in bit group wise.

However, when the number of bit groups of the LDPC codeword is not aninteger multiple of the number of columns of the block interleaver14230, the block interleaver 14230 may divide each column into 2 partsand interleave a part of the plurality of bit groups of the LDPCcodeword in bit group wise, and divide bits of the other bit groups intosub bit groups and interleave the sub bit groups. In this case, the bitsincluded in the other bit groups, that is, the bits included in thenumber of groups which correspond to the remainder when the number ofbit groups constituting the LDPC codeword is divided by the number ofcolumns are not interleaved in bit group wise, but interleaved by beingdivided according to the number of columns.

Specifically, the block interleaver 14230 may interleave the LDPCcodeword by dividing each of the plurality of columns into two parts.

In this case, the block interleaver 14230 may divide the plurality ofcolumns into the first part and the second part based on at least one ofthe number of columns of the block interleaver 14230, the number of bitgroups of the LDPC codeword, and the number of bits of bit groups.

Here, each of the plurality of bit groups may be formed of 360 bits. Inaddition, the number of bit groups of the LDPC codeword is determinedbased on the length of the LDPC codeword and the number of bits includedin the bit group.

For example, when an LDPC codeword in the length of 16200 is dividedsuch that each bit group has 360 bits, the LDPC codeword is divided into45 bit groups. Alternatively, when an LDPC codeword in the length of64800 is divided such that each bit group has 360 bits, the LDPCcodeword may be divided into 180 bit groups. Further, the number ofcolumns constituting the block interleaver 14230 may be determinedaccording to a modulation method. This will be explained in detailbelow.

Accordingly, the number of rows constituting each of the first part andthe second part may be determined based on the number of columnsconstituting the block interleaver 14230, the number of bit groupsconstituting the LDPC codeword, and the number of bits constituting eachof the plurality of bit groups.

Specifically, in each of the plurality of columns, the first part may beformed of as many rows as the number of bits included in at least onebit group which can be written in each column in bit group wise fromamong the plurality of bit groups of the LDPC codeword, according to thenumber of columns constituting the block interleaver 14230, the numberof bit groups constituting the LDPC codeword, and the number of bitsconstituting each bit group.

In each of the plurality of columns, the second part may be formed ofrows excluding as many rows as the number of bits included in at leastsome bit groups which can be written in each of the plurality of columnsin bit group wise. Specifically, the number rows of the second part maybe the same value as a quotient when the number of bits included in allbit groups excluding bit groups corresponding to the first part isdivided by the number of columns constituting the block interleaver14230. In other words, the number of rows of the second part may be thesame value as a quotient when the number of bits included in theremaining bit groups which are not written in the first part from amongbit groups constituting the LDPC codeword is divided by the number ofcolumns.

That is, the block interleaver 14230 may divide each of the plurality ofcolumns into the first part including as many rows as the number of bitsincluded in bit groups which can be written in each column in bit groupwise, and the second part including the other rows.

Accordingly, the first part may be formed of as many rows as the numberof bits included in bit groups, that is, as many rows as an integermultiple of M. However, since the number of codeword bits constitutingeach bit group may be an aliquot part of M as described above, the firstpart may be formed of as many rows as an integer multiple of the numberof bits constituting each bit group.

In this case, the block interleaver 14230 may interleave by writing andreading the LDPC codeword in the first part and the second part in thesame method.

Specifically, the block interleaver 14230 may interleave by writing theLDPC codeword in the plurality of columns constituting each of the firstpart and the second part in a column direction, and reading theplurality of columns constituting the first part and the second part inwhich the LDPC codeword is written in a row direction.

That is, the block interleaver 14230 may interleave by writing the bitsincluded in at least some bit groups which can be written in each of theplurality of columns in bit group wise in each of the plurality ofcolumns of the first part serially, dividing the bits included in theother bit groups except the at least some bit groups and writing in eachof the plurality of columns of the second part in a column direction,and reading the bits written in each of the plurality of columnsconstituting each of the first part and the second part in a rowdirection.

In this case, the block interleaver 14230 may interleave by dividing theother bit groups except the at least some bit groups from among theplurality of bit groups based on the number of columns constituting theblock interleaver 14230.

Specifically, the block interleaver 14230 may interleave by dividing thebits included in the other bit groups by the number of a plurality ofcolumns, writing each of the divided bits in each of a plurality ofcolumns constituting the second part in a column direction, and readingthe plurality of columns constituting the second part, where the dividedbits are written, in a row direction.

That is, the block interleaver 14230 may divide the bits included in theother bit groups except the bit groups written in the first part fromamong the plurality of bit groups of the LDPC codeword, that is, thebits in the number of bit groups which correspond to the remainder whenthe number of bit groups constituting the LDPC codeword is divided bythe number of columns, by the number of columns, and may write thedivided bits in each column of the second part serially in a columndirection.

For example, it is assumed that the block interleaver 14230 is formed ofC number of columns each including R₁ number of rows. In addition, it isassumed that the LDPC codeword is formed of N_(group) number of bitgroups, the number of bit groups N_(group) is not a multiple of C, andA×C+1=N_(group) (A is an integer greater than 0). In other words, it isassumed that when the number of bit groups constituting the LDPCcodeword is divided by the number of columns, the quotient is A and theremainder is 1.

In this case, as shown in FIGS. 20 and 21, the block interleaver 14230may divide each column into a first part including R₁ number of rows anda second part including R₂ number of rows. In this case, R₁ maycorrespond to the number of bits included in bit groups which can bewritten in each column in bit group wise, and R₂ may be R₁ subtractedfrom the number of rows of each column.

That is, in the above-described example, the number of bit groups whichcan be written in each column in bit group wise is A, and the first partof each column may be formed of as many rows as the number of bitsincluded in A number of bit groups, that is, may be formed of as manyrows as A×M number.

In this case, the block interleaver 14230 writes the bits included inthe bit groups which can be written in each column in bit group wise,that is, A number of bit groups, in the first part of each column in thecolumn direction.

That is, as shown in FIGS. 20 and 21, the block interleaver 14230 writesthe bits included in each of bit group Y₀, bit group Y₁, . . . , groupY_(A-1) in the 1^(st) to R₁ ^(th) rows of the first part of the 1^(st)column, writes bits included in each of bit group Y_(A), bit groupY_(A+1), . . . , bit group Y_(2A-1) in the 1^(st) to R₁ ^(th) rows ofthe first part of the 2^(nd) column, . . . , writes bits included ineach of bit group Y_(CA-A), bit group Y_(CA-A+1), . . . , bit groupY_(CA-1) in the 1^(st) to R₁ ^(th) rows of the first part of the columnC.

As described above, the block interleaver 14230 writes the bits includedin the bit groups which can be written in each column in bit group wisein the first part of each column.

In other words, in the above exemplary embodiment, the bits included ineach of bit group (Y₀), bit group (Y₁), . . . , bit group (Y_(A-1)) maynot be divided and all of the bits may be written in the first column,the bits included in each of bit group (Y_(A)), bit group bit (Y_(A+1)),. . . , group (Y_(2A-1)) may not be divided and all of the bits may bewritten in the second column, and the bits included in each of bit group(Y_(CA-A)), may not be bit group (Y_(CA-A+1)), . . . , group (Y_(CA-1))may not be divided and all of the bits may be written in the C column.As such, all bit groups interleaved by the first part are written in thesame column of the first part.

Thereafter, the block interleaver 14230 divides bits included in theother bit groups except the bit groups written in the first part of eachcolumn from among the plurality of bit groups, and writes the bits inthe second part of each column in the column direction. In this case,the block interleaver 14230 divides the bits included in the other bitgroups except the bit groups written in the first part of each column bythe number of columns, so that the same number of bits are written inthe second part of each column, and writes the divided bits in thesecond part of each column in the column direction.

In the above-described example, since A×C+1=N_(group), when the bitgroups constituting the LDPC codeword are written in the first partserially, the last bit group Y_(Ngroup-1) of the LDPC codeword is notwritten in the first part and remains. Accordingly, the blockinterleaver 14230 divides the bits included in the bit groupY_(Ngroup-1) into C number of sub bit groups as shown in FIG. 20, andwrites the divided bits (that is, the bits corresponding to the quotientwhen the bits included in the last group (Y_(Ngroup-1)) are divided byC) in the second part of each column serially.

The bits divided based on the number of columns may be referred to assub bit groups. In this case, each of the sub bit groups may be writtenin each column of the second part. That is, the bits included in the bitgroups may be divided and may form the sub bit groups.

That is, the block interleaver 14230 writes the bits in the 1^(st) to R₂^(th) rows of the second part of the 1^(st) column, writes the bits inthe 1^(st) to R₂ ^(th) rows of the second part of the 2^(nd) column, . .. , and writes the bits in the 1^(st) to R₂ ^(th) rows of the secondpart of the column C. In this case, the block interleaver 14230 maywrite the bits in the second part of each column in the column directionas shown in FIG. 20.

That is, in the second part, the bits constituting the bit group may notbe written in the same column and may be written in the plurality ofcolumns. In other words, in the above example, the last bit group(Y_(Ngroup-1)) is formed of M number of bits and thus, the bits includedin the last bit group (Y_(Ngroup-1)) may be divided by M/C and writtenin each column. That is, the bits included in the last bit group(Y_(Ngroup-1)) are divided by M/C, forming M/C number of sub bit groups,and each of the sub bit groups may be written in each column of thesecond part.

Accordingly, in at least one bit group which is interleaved by thesecond part, the bits included in the at least one bit group are dividedand written in at least two columns constituting the second part.

In the above-described example, the block interleaver 14230 writes thebits in the second part in the column direction. However, this is merelyan example. That is, the block interleaver 14230 may write the bits inthe plurality of columns of the second part in the row direction. Inthis case, the block interleaver 14230 may write the bits in the firstpart in the same method as described above.

Specifically, referring to FIG. 21, the block interleaver 14230 writesthe bits from the 1^(st) row of the second part in the 1^(st) column tothe 1^(st) row of the second part in the column C, writes the bits fromthe 2^(nd) row of the second part in the 1^(st) column to the 2^(nd) rowof the second part in the column C, . . . , etc., and writes the bitsfrom the R₂ ^(th) row of the second part in the 1^(st) column to the R₂^(th) row of the second part in the column C.

On the other hand, the block interleaver 14230 reads the bits written ineach row of each part serially in the row direction. That is, as shownin FIGS. 20 and 21, the block interleaver 14230 reads the bits writtenin each row of the first part of the plurality of columns serially inthe row direction, and reads the bits written in each row of the secondpart of the plurality of columns serially in the row direction.

Accordingly, the block interleaver 14230 may interleave a part of theplurality of bit groups constituting the LDPC codeword in bit groupwise, and divide and interleave some of the remaining bit groups. Thatis, the block interleaver 14230 may interleave by writing the LDPCcodeword constituting a predetermined number of bit groups from amongthe plurality of bit groups in the plurality of columns of the firstpart in bit group wise, dividing the bits of the other bit groups andwriting the bits in each of the columns of the second part, and readingthe plurality of columns of the first and second parts in the rowdirection.

As described above, the block interleaver 14230 may interleave theplurality of bit groups in the methods described above with reference toFIGS. 19 to 21.

In particular, in the case of FIG. 20, the bits included in the bitgroup which does not belong to the first part are written in the secondpart in the column direction and read in the row direction. In view ofthis, the order of the bits included in the bit group which does notbelong to the first part is rearranged. Since the bits included in thebit group which does not belong to the first part are interleaved asdescribed above, bit error rate (BER)/frame error rate (FER) performancecan be improved in comparison with a case in which such bits are notinterleaved.

However, the bit group which does not belong to the first part may notbe interleaved as shown in FIG. 20. That is, since the block interleaver14230 writes and reads the bits included in the group which does notbelong to the first part in and from the second part in the rowdirection, the order of the bits included in the group which does notbelong to the first part is not changed and the bits are outputserially. In this case, the bits included in the group which does notbelong to the first part may be output serially and mapped onto amodulation symbol.

In FIGS. 20 and 21, the last single bit group of the plurality of bitgroups is written in the second part. However, this is merely anexample. The number of bit groups written in the second part may varyaccording to the total number of bit groups of the LDPC codeword, thenumber of columns and rows, the number of transmission antennas, etc.

The block interleaver 14230 may have a configuration as shown in tables1 and 2 presented below:

TABLE 1 N_(ldpc) = 64800 16 64 256 1024 4096 QPSK QAM QAM QAM QAM QAM C2 4 6 8 10 12 R₁ 32400 16200 10800 7920 6480 5400 R₂ 0 0 0 180 0 0

TABLE 2 N_(ldpc) = 16200 16 64 256 1024 4096 QPSK QAM QAM QAM QAM QAM C2 4 6 8 10 12 R₁ 7920 3960 2520 1800 1440 1080 R₂ 180 90 180 225 180 270

Herein, C (or N_(C)) is the number of columns of the block interleaver14230, R₁ is the number of rows constituting the first part in eachcolumn, and R₂ is the number of rows constituting the second part ineach column.

Referring to Tables 1 and 2, the number of columns has the same value asa modulation order according to a modulation method, and each of aplurality of columns is formed of rows corresponding to the number ofbits constituting the LDPC codeword divided by the number of a pluralityof columns.

For example, when the length N_(ldpc) of the LDPC codeword is 64800 andthe modulation method is 16-QAM, the block interleaver 14230 is formedof 4 columns as the modulation order is 4 in the case of 16-QAM, andeach column is formed of rows as many as R₁+R₂=16200(=64800/4). Inanother example, when the length N_(ldpc) of the LDPC codeword is 64800and the modulation method is 64-QAM, the block interleaver 14230 isformed of 6 columns as the modulation order is 6 in the case of 64-QAM,and each column is formed of rows as many as R₁+R₂=10800(=64800/6).

Meanwhile, referring to Tables 1 and 2, when the number of bit groupsconstituting an LDPC codeword is an integer multiple of the number ofcolumns, the block interleaver 14230 interleaves without dividing eachcolumn. Therefore, R₁ corresponds to the number of rows constitutingeach column, and R₂ is 0. In addition, when the number of bit groupsconstituting an LDPC codeword is not an integer multiple of the numberof columns, the block interleaver 14230 interleaves the groups bydividing each column into the first part formed of R₁ number of rows,and the second part formed of R₂ number of rows.

When the number of columns of the block interleaver 14230 is equal tothe number of bits constituting a modulation symbol, bits included in asame bit group are mapped onto a single bit of each modulation symbol asshown in Tables 1 and 2.

For example, when N_(ldpc)=64800 and the modulation method is 16-QAM,the block interleaver 14230 may be formed of four (4) columns eachincluding 16200 rows. In this case, the bits included in each of theplurality of bit groups are written in the four (4) columns and the bitswritten in the same row in each column are output serially. In thiscase, since four (4) bits constitute a single modulation symbol in themodulation method of 16-QAM, bits included in the same bit group, thatis, bits output from a single column, may be mapped onto a single bit ofeach modulation symbol. For example, bits included in a bit groupwritten in the 1^(st) column may be mapped onto the first bit of eachmodulation symbol.

In another example, when N_(ldpc)=64800 and the modulation method is64-QAM, the block interleaver 14230 may be formed of six (6) columnseach including 10800 rows. In this case, the bits included in each ofthe plurality of bit groups are written in the six (6) columns and thebits written in the same row in each column are output serially. In thiscase, since six (6) bits constitute a single modulation symbol in themodulation method of 64-QAM, bits included in the same bit group, thatis, bits output from a single column, may be mapped onto a single bit ofeach modulation symbol. For example, bits included in a bit groupwritten in the 1^(st) column may be mapped onto the first bit of eachmodulation symbol.

Referring to Tables 1 and 2, the total number of rows of the blockinterleaver 14230, that is, R₁+R₂, is N_(ldpc)/C.

In addition, the number of rows of the first part, R₁, is an integermultiple of the number of bits included in each group, M (e.g., M=360),and maybe expressed as └N^(group)/C┘×M, and the number of rows of thesecond part, R₂, may be N_(ldpc)/C-R₁. Herein, └N^(group)/C┘ is thelargest integer below N_(group)/C. Since R₁ is an integer multiple ofthe number of bits included in each group, M, bits may be written in R₁in bit groups wise.

In addition, when the number of bit groups of the LDPC codeword is not amultiple of the number of columns, it can be seen from Tables 1 and 2that the block interleaver 14230 interleaves by dividing each columninto two parts.

Specifically, the length of the LDPC codeword divided by the number ofcolumns is the total number of rows included in the each column. In thiscase, when the number of bit groups of the LDPC codeword is a multipleof the number of columns, each column is not divided into two parts.However, when the number of bit groups of the LDPC codeword is not amultiple of the number of columns, each column is divided into twoparts.

For example, it is assumed that the number of columns of the blockinterleaver 14230 is identical to the number of bits constituting amodulation symbol, and an LDPC codeword is formed of 64800 bits as shownin Table 1. In this case, each bit group of the LDPC codeword is formedof 360 bits, and the LDPC codeword is formed of 64800/360(=180) bitgroups.

When the modulation method is 16-QAM, the block interleaver 14230 may beformed of four (4) columns and each column may have 64800/4(=16200)rows.

In this case, since the number of bit groups of the LDPC codeworddivided by the number of columns is 180/4(=45), bits can be written ineach column in bit group wise without dividing each column into twoparts. That is, bits included in 45 bit groups which is the quotientwhen the number of bit groups constituting the LDPC codeword is dividedby the number of columns, that is, 45×360(=16200) bits can be written ineach column.

However, when the modulation method is 256-QAM, the block interleaver14230 may be formed of eight (8) columns and each column may have64800/8(=8100) rows.

In this case, since the number of bit groups of the LDPC codeworddivided by the number of columns is 180/8=22.5, the number of bit groupsconstituting the LDPC codeword is not an integer multiple of the numberof columns. Accordingly, the block interleaver 14230 divides each of theeight (8) columns into two parts to perform interleaving in bit groupwise.

In this case, since the bits should be written in the first part of eachcolumn in bit group wise, the number of bit groups which can be writtenin the first part of each column in bit group wise is 22, which is thequotient when the number of bit groups constituting the LDPC codeword isdivided by the number of columns, and accordingly, the first part ofeach column has 22×360(=7920) rows. Accordingly, 7920 bits included in22 bit groups may be written in the first part of each column.

The second part of each column has rows which are the rows of the firstpart subtracted from the total rows of each column. Accordingly, thesecond part of each column includes 8100−7920(=180) rows.

In this case, the bits included in the other bit groups which have notbeen written in the first part are divided and written in the secondpart of each column.

Specifically, since 22×8(=176) bit groups are written in the first part,the number of bit groups to be written in the second part is 180−176(=4) (for example, bit group Y₁₇₆, bit group Y₁₇₇, bit group Y₁₇₈, andbit group Y₁₇₉ from among bit group Y₀, bit group Y₁, bit group Y₂, . .. , bit group Y₁₇₈, and bit group Y₁₇₉ constituting the LDPC codeword).

Accordingly, the block interleaver 14230 may write the four (4) bitgroups which have not been written in the first part and remains fromamong the groups constituting the LDPC codeword in the second part ofeach column serially.

That is, the block interleaver 14230 may write 180 bits of the 360 bitsincluded in the bit group Y₁₇₆ in the 1^(st) row to the 180^(th) row ofthe second part of the 1^(st) column in the column direction, and maywrite the other 180 bits in the 1^(st) row to the 180^(th) row of thesecond part of the 2^(nd) column in the column direction. In addition,the block interleaver 14230 may write 180 bits of the 360 bits includedin the bit group Y₁₇₇ in the 1^(st) row to the 180^(th) row of thesecond part of the 3^(rd) column in the column direction, and may writethe other 180 bits in the 1^(st) row to the 180^(th) row of the secondpart of the 4^(th) column in the column direction. In addition, theblock interleaver 14230 may write 180 bits of the 360 bits included inthe bit group Y₁₇₈ in the 1^(st) row to the 180^(th) row of the secondpart of the 5^(th) column in the column direction, and may write theother 180 bits in the 1^(st) row to the 180^(th) row of the second partof the 6^(th) column in the column direction. In addition, the blockinterleaver 14230 may write 180 bits of the 360 bits included in the bitgroup Y₁₇₉ in the 1^(st) row to the 180^(th) row of the second part ofthe 7^(th) column in the column direction, and may write the other 180bits in the 1^(st) row to the 180^(th) row of the second part of the8^(th) column in the column direction.

Accordingly, the bits included in the bit group which has not beenwritten in the first part and remains are not written in the same columnin the second part and may be divided and written in the plurality ofcolumns.

Hereinafter, the block interleaver 14230 according to an exemplaryembodiment will be explained in detail with reference to FIG. 22.

In a group-interleaved LDPC codeword (v₀, v₁, . . . , v_(N) _(ldpc) ⁻¹),Y_(j) is continuously arranged like V={Y₀, Y₁, . . . Y_(N) _(group) ⁻¹}.

The LDPC codeword after group interleaving may be interleaved by theblock interleaver 14230 as shown in FIG. 22. In this case, the blockinterleaver 14230 divide a plurality of columns into the first part(Part 1) and the second part (Part 2) based on the number of columns ofthe block interleaver 14230 and the number of bits of bit groups. Inthis case, in the first part, the bits constituting the bit groups maybe written in the same column, and in the second part, the bitsconstituting the bit groups may be written in a plurality ofcolumns(i.e. the bits constituting the bit groups may be written in atleast two columns).

Specifically, input bits vi are written serially from the first part tothe second part column wise, and then read out serially from the firstpart to the second part row wise. That is, the data bits v_(i) arewritten serially into the block interleaver column-wise starting in thefirst aprt and continuing column-wise finishing in the second part, andthen read out serially row-wise from the first part and then row-wisefrom the second part. Accordingly, the bit included in the same bitgroup in the first part may be mapped onto a single bit of eachmodulation symbol.

In this case, the number of columns and the number of rows of the firstpart and the second part of the block interleaver 14230 vary accordingto a modulation format and a length of the LDPC codeword as in Table 3presented below. That is, the first part and the second part blockinterleaving configurations for each modulation format and code lengthare specified in Table 3 presented below. Herein, the number of columnsof the block interleaver 14230 may be equal to the number of bitsconstituting a modulation symbol. In addition, a sum of the number ofrows of the first part, N_(r1) and the number of rows of the secondpart, N_(r2), is equal to N_(ldpc)/N_(C) (herein, N_(C) is the number ofcolumns). In addition, since N_(r1)(=└Ngroup/Nc┘×360) is a multiple of360, a multiple of bit groups may be written in the first part.

TABLE 3 Rows in Part 1 N_(r1) Rows in Part 2 N_(r2) N_(ldpc) = N_(ldpc)= N_(ldpc) = N_(ldpc) = Modulation 64800 16200 64800 16200 Columns N_(c)QPSK 32400 7920 0 180 2 16-QAM 16200 3960 0 90 4 64-QAM 10800 2520 0 1806 256-QAM  7920 1800 180 225 8 1024-QAM  6480 1440 0 180 10 4096-QAM 5400 1080 0 270 12

Hereinafter, an operation of the block interleaver 14230 will beexplained in detail.

Specifically, as shown in FIG. 22, the input bit v_(i)(0≤i<N_(C)×N_(r1)) is written in r_(i) row of c_(i) column of the firstpart of the block interleaver 14230. Herein, c_(i) and r_(i) are

$c_{i} = \left\lfloor \frac{i}{N_{r\; 1}} \right\rfloor$and r_(i)=(i mod N_(r1)), respectively.

In addition, the input bit v_(i) (N_(C)×N_(r1)≤i<N_(ldpc)) is written inr_(i) row of c_(i) column of the second part of the block interleaver14230. Herein, c_(i) and r_(i) satisfy

$c_{i} = \left\lfloor \frac{\left( {i - {N_{C} \times N_{r\; 1}}} \right)}{N_{r\; 2}} \right\rfloor$and r_(i)=N_(r1)+{(i−N_(C)×N_(r1))mod N_(r2)}, respectively.

An output bit q_(j)(0≤j<N_(ldpc)) is read from c_(j) column of r_(j)row. Herein, r_(j) and c_(j) satisfy

$r_{j} = \left\lfloor \frac{j}{N_{c}} \right\rfloor$and c_(j)=(j mod N_(C)), respectively.

For example, when the length N_(ldpc) of an LDPC codeword is 64800 andthe modulation method is 256-QAM, the order of bits output from theblock interleaver 14230 may be (q₀,q₁,q₂, . . . ,q₁₆₃₃₅₇,q₆₃₃₅₈,q₆₃₃₅₉,q₆₃₃₆₀,q₆₃₃₆₁, . . . ,q₆₄₇₉₉)=(v₀,v₇₉₂₀,v₁₅₈₄₀, .. . , v₄₇₅₁₉,v₅₅₄₃₉,v₆₃₃₅₉,v₆₃₃₆₀,v₆₃₅₄₀, . . . , v₆₄₇₉₉). Herein, theindexes of the right side of the foregoing equation may be specificallyexpressed for the eight (8) columns as 0, 7920, 15840, 23760, 31680,39600, 47520, 55440, 1, 7921, 15841, 23761, 31681, 39601, 47521, 55441,. . . , 7919, 15839, 23759, 31679, 39599, 47519, 55439, 63359, 63360,63540, 63720, 63900, 64080, 64260, 64440, 64620, . . . , 63539, 63719,63899, 64079, 64259, 64439, 64619, 64799.

Hereinafter, a method of mapping bits onto constellation points will bedescribed in greater detail, according to various exemplary embodiments

A non-uniform constellation (NUC) according to an exemplary embodimentmay be generated or obtained using any suitable method or algorithmincluding steps (or operations) for generating or obtaining such anon-uniform constellation. The non-uniform constellation according tothe embodiment may be generated or obtained by any suitably arrangedapparatus or system including means for generating or obtaining such anon-uniform constellation. The methods or algorithms described hereinmay be implemented in any suitably arranged apparatus or systemincluding means for carrying out the method or algorithm steps.

Certain exemplary embodiments provide an algorithm for obtaining anon-uniform constellation. The non-uniform constellation obtained in thecertain exemplary embodiments may provide a higher capacity than anequivalent uniform constellation (e.g. a uniform constellation of thesame order). Certain exemplary embodiments may obtain an optimisednon-uniform constellation using an algorithm with relatively lowcomplexity and relatively high computational efficiency. For example, analgorithm in certain exemplary embodiments may obtain an optimisednon-uniform constellation much faster than an algorithm using a bruteforce method that searches all (or a high proportion of) possiblecandidate constellations. Certain exemplary embodiments provide analgorithm for obtaining optimised non-uniform constellations suitablefor very high-order constellation (e.g. having more than 1024constellation points).

Various embodiments are described below in which non-uniform (NU)Quadrature Amplitude Modulation (QAM) constellations are obtained.However, the skilled person will appreciate that the inventive conceptis not limited to QAM constellations, but may be applied to other typesof constellation.

As mentioned above, a constellation may be characterised by a number ofparameters, for example specifying spacings between constellationpoints, or specifying the position of each positive real level (completeconstellations may be obtained from these parameters because theconstellations are the same for real and imaginary axes and the same forpositive and negative values). In order to obtain an optimumconstellation, a brute force approach may be taken in which combinationsof values for each of the parameters are searched with a certain stepsize up to a certain maximum value. Each combination of values for eachparameter corresponds to a distinct constellation. The constellationhaving the best performance is selected.

However, in certain exemplary embodiments, the number of parameters maybe reduced by imposing one or more certain geometric and/or symmetryconstraints on the constellations. For example, one constraint may bethat the constellations are symmetric among the four quadrants of theconstellations. In addition, the constellations may be constrained inthat the constellation points are arranged in a QAM type lattice inwhich, within each quadrant, (i) constellation points are arranged inhorizontal and vertical lines, (ii) the number of horizontal lines isthe same as the number of vertical lines, (iii) the same number ofconstellation points are arranged in each horizontal line, and (iv) thesame number of constellation points are arranged in each vertical line.In another example, a constellation may be constrained to be a circularconstellation (e.g. a constellation having circular symmetry).Furthermore, constellations having the same relative arrangement,differing only in size, may be regarded as equivalent. In this case, oneof the parameters may be set to a fixed value. The skilled person willappreciate that the inventive concept is not limited to the aboveexamples, and that one or more additional or alternative constraints maybe used.

In certain exemplary embodiments, a non-uniform QAM (NU-QAM)constellation may have a constellation conforming to one or moregeometric and/or symmetry constraints, for example one or more, or all,of the above constraints, or a rotation and/or scaling thereof. Anon-uniform N-QAM constellation may be a non-uniform QAM constellationincluding N constellation points.

By applying the constraints described above, the number of parametersmay be reduced, for example to 1, 3, 7, 15, 31 and 63 parameter(s) forconstellations including 16, 64, 256, 1024, 4096 and 16384 constellationpoints, respectively. The number of parameters in a reduced set ofparameters may be denoted by b. For example b=1 for 16-QAM (in whichthere are 16 positions that are symmetric on the real/imaginary andpositive/negative axes). Thus there are only 2 points to define. Sincethe total power of the constellation is typically normalized to one,fixing one parameter will fix the other. Thus b=1 for a square 16 QAM.

In certain exemplary embodiments, combinations of values for each of theb parameters are searched with a step size d up to a maximum value A.Thus, the number of search iterations is equal to (A/d)^(b).

A first algorithm according to certain exemplary embodiments forobtaining an optimum non-uniform constellation for a given SNR will nowbe described. The algorithm uses an iterative scheme to gradually modifyan initial constellation until the constellation converges. For example,the initial constellation may be a uniform constellation, theconstellation may be modified by changing the values of the parametersbetween iterations, and convergence occurs when the values of all theparameters change by less than a threshold amount between iterations. Anoptimum constellation may be defined as the constellation having thebest performance according to any suitable measure. For example, themeasure may include a coded modulation (CM) capacity or BICM capacity.In the following example a non-uniform 64-QAM constellation is obtained,in which the (reduced) number of variable parameters, b, is equal to 3.

FIG. 23 is a schematic diagram of a first algorithm, according to anexemplary embodiment, and FIG. 24 is a flowchart illustrating operationsof the first algorithm, according to an exemplary embodiment. In thealgorithm, the following variables are used. A parameter C_last denotesa particular constellation, corresponding to a particular set of valuesof the b parameters. A parameter C_last is initialised with a certaininitial constellation, for example a uniform constellation. A parameterSNR denotes a signal-to-noise ratio. The SNR parameter is set to adesired value equal to an SNR for which an optimum constellation isdesired. The parameter C_best denotes a constellation that maximisesperformance, for example maximises the CM capacity or BICM capacity, fora given SNR. The parameter d denotes a first step size used in thealgorithm. The parameter d (or step) is initialised to a suitable valuethat may be determined theoretically and/or experimentally. A parameterMin_Step denotes a minimum allowed value for d, and is set to a fixedvalue.

In operation 201, C_last is initialised to an input constellation. In anext operation 203, step d is initialised to a value Ini_step. Inoperation 205, a set of candidate constellations is obtained. The set ofcandidate constellations includes the constellation C_last and one ormore modified constellations, where each modified constellation isobtained by modifying one or more of the parameter values definingC_last using any suitable scheme. In the illustrated example, the set ofcandidate constellations are created based on C_last and step size d,denoted by function CreateSet(C_Last, d). For example, for eachconstellation point, three derived constellations are generated [C_last,C_last+d, C_last−d]. Specifically, a set of constellations is derivedsuch that the values of the b parameters in C_last are each set to oneof n new values varying around the current parameter value. For example,three new values (n=3) may be used, which include (i) the currentparameter value, (ii) a value d greater than the current parametervalue, and (iii) a value d less than the current parameter value. Forexample, if there are two constellation levels to be defined then thenumber of combinations to be tested are 3×3 (corresponding to threepositions for each level). All combinations of the new parameter valuesare used to generate the set of constellation. Thus, the set ofconstellations includes a total of n^(b) constellations. Although threenew values for each parameter are used in the embodiment describedabove, any suitable number of new values may be used in anotherembodiment. The set of new values may include the old (or current)value, or may not include the old value.

In certain exemplary embodiments, three values of each level are chosenso that the total number of possibilities to be tested is 3^(b), where bis the number of levels (parameters) to be optimised. In the case ofvery high-order constellations, for example above 1K, 3^(b) may be veryhigh. In this case, all the levels may be fixed except one, for whichthree possibilities are tested, C_last, C_last+d and C_last−d untilconvergence is achieved. The same operation may then be repeated for theother levels. The cost of this operation is multiplicative and notexponential (for example, if it is supposed that each level converges inone iteration then the cost will be 3×b instead 3^(b).)

In operation 207, the performance of each constellation in the set ofderived (candidate) constellations is calculated or determined using anysuitable performance measure (e.g. capacity). In operation 209, thecandidate constellation having the best performance (e.g. the candidateconstellation that maximises the capacity) is assigned to C_best. Inoperation 211, it is determined whether C_best differs from C_last bymore than a threshold amount. For example, in the illustrated example,the threshold amount is equal to zero, so that it is determined whetherC_best=C_last. That is, it is determined whether there is any differencebetween constellation C_best and constellation C_last (e.g. within acertain resolution). The difference may be any suitable measure ofdifference, for example including a difference based on geometry (e.g.differences in the locations of the constellation points of theconstellations) and/or a performance measure (e.g. a difference in acertain performance measure between the constellations). If it isdetermined in operation 211 that C_best≠C_last, then in operation 213,C_last takes the value C_best (i.e. so that the value of C_last in thenext iteration is equal to the value of C_best in the current iteration)and the method returns to operation 205 in which a set of candidateconstellations are created based on C_last and step size d,CreateSet(C_Last, d). On the other hand, if it is determined inoperation 211 that C_best=C_last, then, in operation 215, C_last takesthe value C_best and the method moves to operation 217.

In operation 217, it is determined whether d<Min_Step. If it isdetermined in operation 217 that d≥Min_Step then the method moves tooperation 219 in which the step size d is reduced. For example, d isdivided by a certain factor (e.g. 2). Following operation 219, themethod returns to operation 205 in which a set of candidateconstellations are created based on C_last and step size d (i.e.,reduced d), CreateSet(C_Last, d). On the other hand, If it is determinedin operation 217 that d<Min Step then the value of C_best is saved andthe algorithm ends.

FIG. 25 illustrates the convergence of C_last with respect to one of theparameters as the first algorithm of FIGS. 23 and 24 is performed.Initially, the value of the parameter converges to a certain value. Whenthe value of the parameter has converged within a certain resolution,the step size d is reduced and the value of the parameter convergesfurther, until the step size d has reached the minimum step size.

In the example shown in FIG. 25, for each iteration, three new parametervalues are tried, as represented by the vertical columns of circles. Thebest new parameter for each iteration is indicated in FIG. 25 as afilled circle. The best parameter value in one iteration is used as thenew parameter value for the next iteration. Thus, in the exampleillustrated in FIG. 25, in which three new parameter values are tried(including the current parameter and parameters an amount d above andbelow the current parameter), the filled circle of one iterationcorresponds to the middle of the three circles arranged in a column forthe next iteration.

In certain exemplary embodiments, operations 217 and 219 of thealgorithm illustrated in FIG. 24 may be omitted so that operations 205,207, 209, 211, 213 and 215 are performed using the initial step size. Inthis case, when it is determined in operation 215 that C_best=C_last,the step size is not reduced, but rather the value of C_best is savedand the algorithm ends. By omitting operations 217 and 219, thealgorithm may potentially complete more quickly. However, in this casethe output constellation C_best may differ from the true optimumconstellation more than the output constellation C_best obtained in thealgorithm illustrated in FIG. 24 where the step size d is decreased.This may be seen in FIG. 25, where it can be seen that the bestparameter value in the final iteration lies closer to the optimal value(indicated by the horizontal line) than the best parameter value at thestage of convergence with the initial step size.

The first algorithm described above determines an optimum constellationbased on a certain performance measure (e.g. capacity). In thefollowing, various algorithms for determining an optimum constellationfor a transmission system defined by a set of one or more systemparameter values, where the constellation is optimised for a certaindesired value of a system parameter (e.g. a certain SNR value or certainRicean factor). In these embodiments, a system parameter value is set toan initial value (e.g. a relatively high value) and an optimumconstellation is generated using an algorithm described above (e.g. thealgorithm illustrated in FIG. 24), wherein the performance measure isbased on a defined transmission system having the set system parametervalue. The system parameter value is then reset to a modified value(e.g. by reducing the value by a certain step size) and the algorithm isre-run. The other system parameter values may remain fixed. This processis repeated until the system parameter value reaches a certain desiredvalue.

For example, FIG. 26 illustrates a second algorithm for determining anoptimal constellation at a given SNR value S in an additive whiteGaussian noise (AWGN) channel. In operation 401, the algorithm isinitialised by setting an SNR parameter to a high value N, where N islarge. For example, the initial SNR value may be set to an SNR valueabove which a non-uniform constellation provides no better performancethan an equivalent uniform constellation. This value may be determined,for example, theoretically and/or experimentally. In operation 401, theparameter C_last is also initialised to a certain constellation, forexample a uniform constellation.

In operation 403, the first algorithm described above is run using theinitialised constellation C_last as the input constellation and usingthe initialised SNR ratio. By applying the first algorithm, theconstellation C_last will converge to an optimal constellation C_bestfor a specific input value of SNR. An output of operation 403 is C_bestobtained using the first algorithm. In operation 405 the SNR value isreduced by a certain amount, for example one unit or step size. Inoperation 405, C_last takes the value of C_best (i.e. so that the valueof C_last in the next iteration is equal to the value of C_best in thecurrent iteration). In operation 407 it is determined whether SNR<S. Ifit is determined in operation 407 that SNR≥S, then the method returns tooperation 403, in which the first algorithm is run with new values ofC_last and SNR. On the other hand, if it is determined in operation 407that SNR<S, then the value of C_best is saved and the algorithm ends. Byapplying the second algorithm, the resulting constellation C_best is theoptimal constellation for the desired SNR value S.

FIG. 27 illustrates convergence of the constellation C_best according tothe second algorithm of FIG. 26 is performed. Each of the three curvesrepresents variation in the value of a respective one of the threevariable parameters. The solid constant line represents the fixed valueof a fixed parameter. As shown in FIG. 27, at the start of the secondalgorithm, starting from the right-hand side of FIG. 27, the SNR valueis high and the constellation is a uniform constellation, as defined bythe values of the parameters on the right-hand side of FIG. 27, labelled“Initial condition”. At each iteration, an optimal constellation isobtained for the specific SNR value (indicated in FIG. 27 by themarkers). The SNR is then reduced and the optimal constellation isobtained for the new SNR (this process being indicated for one of theparameters by the stepped line in FIG. 27). As shown in FIG. 27, thevalues of the parameters corresponding to the optimal constellation varysmoothly with varying SNR values. The iterations are repeated until theSNR value reaches the desired SNR value S.

By running the second algorithm illustrated in FIG. 26, an optimalconstellation is derived from each of a set of SNR values. Theseconstellations may be stored in association with the corresponding SNRvalues, for example in a look-up table.

FIG. 28 illustrates a third algorithm for determining an optimalconstellation at a given SNR value S in a Rician fading channel for adesired Rician factor K_rice. The Rician channel is given by:

$\begin{matrix}{\sqrt{\frac{K}{K + 1}} + {\sqrt{\frac{1}{K + 1}}h}} & \left\lbrack {{Equation}\mspace{14mu} 1} \right\rbrack\end{matrix}$

In Equation 1, K is the Rician factor and h is Rayleigh distributed(centred and normalised). Initially, the third algorithm applies thesecond algorithm described above to obtain the optimal constellationC_best at an SNR value S for an AWGN channel, C_best(AWGN). In operation601, parameter C_last is initialised to C_best(AWGN). In operation 601,the Rician factor K is initialised to a high value, which may bedetermined theoretically and/or experimentally. For example, K may beinitialised to a value K_rice+N, where N is large.

In operation 603, the first algorithm described above is run using theinitialised constellation C_last as the input constellation and usingthe initialised Rician factor K to obtain an optimal constellationC_best. In operation 605, the Rician factor K is reduced by a certainamount, for example by one unit. In operation 605, C_last takes thevalue of C_best (i.e. so that the value of C_last in the next iterationis equal to the value of C_best in the current iteration). In operation607 it is determined whether K<K_rice. If it is determined in operation607 that K≥K_rice, then the method returns to operation 603, in whichthe first algorithm is run with new values of C_last and K. On the otherhand, if it is determined in operation 607 that K<K_rice, then the valueof C_best is saved and the algorithm ends. By applying the thirdalgorithm, the resulting constellation C_best is the optimalconstellation for the desired Rician factor K_rice.

FIG. 29 illustrates a fourth algorithm for determining an optimalconstellation at a given SNR value S in a Rayleigh fading channel. ARayleigh fading channel is a special case of Rician fading with theRician factor K=0. Accordingly, the fourth algorithm is the same as thethird algorithm described above, except that K_rice is set to zero.

Table 4 below compares the number of capacity calculation function callsfor obtaining optimal constellations for various constellation sizes(16-QAM, 64-QAM and 256-QAM) using an exhaustive search, a restrictedexhaustive search and an algorithm according to the present embodiment.The values in Table 4 are based on a step size d of 0.0125 and maximumvalue for the parameters of 10. Table 4 also indicates a factordifference between using a restricted exhaustive search and a searchusing an algorithm according to the present embodiment. As can be seen,the algorithm according to the present embodiment is significantly moreefficient, for example by a factor of 1.15×10¹⁰ for 256-QAM.

TABLE 4 Algorithm Restricted according to Exhaustive exhaustive theexemplary Gain versus search search embodiment restricted 16QAM 800 80021 38 64QAM 5.1e9  1.9e8  1701 117577 256QAM  2.1e21 2.5e15 2165131.15e10

In Table 4, the difference between the exhaustive search and therestrictive exhaustive search is as following. It is assumed in thefollowing that there are 4 levels (parameters) between 0 and 10. In theexhaustive search, each of the 4 parameters is searched over the wholerange [0-10] with a certain granularity. In the case of the restrictedexhaustive search, the range in which each level will fall is fixed. Forexample level 1 (first parameter) will be in the range [0-2.5], level 2in the range [2.5-5], level 3 in the range [5-7.5], level 4 in the range[7.5-10]. In this manner, the number of possibilities is reduced.

FIG. 30 illustrates a fifth algorithm for determining an optimalconstellation. This algorithm corresponds closely to the algorithmillustrated in FIG. 24, but is modified to increase overall efficiency.This algorithm includes an inner loop for operations (operations803-819) corresponding to operations 203-219 of FIG. 24. However,operation 805 for creating a set of candidate constellations is modifiedfrom the corresponding operation 205 of FIG. 24. Specifically, in thealgorithm of FIG. 30, rather than modifying each of the b parameters andtrying all combinations of the new parameters as in the algorithm ofFIG. 24, only one parameter is modified at a time. For example, withinone iteration of the inner loop 803-819, only one parameter (parameteri) is modified to produce a set of candidate constellation. Thecapacities of these constellations are calculated and the bestconstellation is selected, as in FIG. 24.

In the algorithm of FIG. 30, the value of i is varied from 1 to b usingan outer loop (operations 821-825). The algorithm of FIG. 30 isinitialised in operation 801, corresponding to operation 201 of FIG. 24.It can be seen that, by using the algorithm of FIG. 30, rather than thealgorithm of FIG. 24, the total number of candidate constellation tried(i.e. the total number of capacity calculations) is significantlyreduced. However, in simulations, the optimal constellation obtainedusing the algorithm of FIG. 30 is very close to the optimalconstellation obtained using the algorithm of FIG. 24, which in turn isvery close to the true optimal constellation obtained using anexhaustive search. The improvement in computational efficiency using thealgorithms according to the above embodiments, when compared to anexhaustive search, increases as the constellation order increases.

As with the algorithm illustrated in FIG. 24, in certain exemplaryembodiments, operations 817 and 819 of the algorithm illustrated in FIG.30 may be omitted.

According to the above embodiments, optimal constellations may beobtained for particular parameters, for example SNR, Rician factor etc.These optimum constellations are obtained independently of anyparticular system implementation, for example independent of aparticular coding scheme. In the following, various embodiments aredescribed for obtaining an optimal constellation for a specifictransmission system.

A transmission system may include a number of processes which may affectthe optimal constellation, for example FEC encoding, bit interleaving,demultiplexing bits to cells, mapping cells to constellations, cellinterleaving, constellation rotation, in-phase and quadrature phase(I/Q) component interleaving, inter-frame convolution and inter-frameblock interleaving, and multiple-inputs-single-output (MISO) precoding.A QAM mapper is used in the Bit Interleaved Coded Modulation (BICM)chain to map bits to symbols. The QAM mapper may use a uniformconstellation to map bits to cells (for example as done in DVB-T2).However, an increase in capacity may be achieved by using a fixednon-uniform constellation. A non-fixed non-uniform constellation (e.g.QAM) may be used to further increase capacity. The BICM capacity dependson the bit to cell mapping used. Optimisations are desirable in the LDPCdesign, the QAM mapping and the mapping of bits to cells.

In certain exemplary embodiments, different constellations are generatedusing a certain step size. A bit error rate (BER), a block error rateand/or a packet error rate corresponding to the constellations areobtained, and the best constellation is selected based on one or more ofthe aforementioned error rates.

In certain exemplary embodiments, the process illustrated in FIG. 31 maybe carried out to obtain an optimal constellation for a specific system.In operation 901, a uniform constellation (e.g. uniform QAM) isselected. In operation 903, BER values for the selected uniformconstellation are obtained over a range of SNR values (e.g. usingsimulation or by obtaining the BER values theoretically orexperimentally). These values may be obtained based on a specificsystem, for example using a particular coding scheme (e.g. LDPC codingwith a certain parity check matrix) with a certain coding rate and acertain bit interleaver and cell interleaver. FIG. 32 illustrates anexemplary plot for 64-QAM using an LDPC coding rate of 2/3 from DVB-T2in an AWGN channel.

In operation 905, an SNR at which the BER falls below a threshold value(e.g. 0.001) is determined. The threshold value may be selected suchthat the resulting SNR falls within a “waterfall zone” of the BER curve(i.e. the zone at which the BER falls relatively rapidly with increasingSNR). The determined SNR value may be denoted S and referred to as a“waterfall” SNR.

Next, an optimal constellation may be obtained for the SNR value Sdetermined in operation 905.

For example, in some exemplary embodiments, in operation 907 a, anoptimal constellation may be selected from optimal constellationsobtained when performing the algorithms described above in relation toFIGS. 23-30 (and stored in a look-up table). Specifically, an optimalconstellation previously determined for the SNR value S may be retrievedfrom the look-up table.

Alternatively, an iterative process may be performed to obtain anoptimal (non-uniform) constellation. Specifically, after operation 905,the process moves to operation 907 b in which the algorithms describedabove in relation to FIGS. 23-30 are used to obtain an optimalconstellation for the SNR value S (or for a value close to S). Afteroperation 907 b, the process returns to operation 903, in which BERvalues are obtained over a range of SNR values. In this iteration, theBER values are obtained for the optimal constellation obtained inoperation 907 b (rather than for the initial uniform constellation as inthe first iteration). In a similar manner as previously described, theSNR value at which the BER falls below a threshold value (using the newset of BER values for the optimal constellation) is determined inoperation 905, and a new optimal constellation for the newly determinedSNR value is obtain in operation 907 b. The previously describedoperations 903, 905, 907 may be repeated a certain number of time (forexample a predetermined number of times). Alternatively, the algorithmmay terminate when the waterfall SNR stops decreasing betweeniterations, and instead starts increasing.

FIGS. 33 and 34 illustrate a sixth algorithm for determining an optimalconstellation. This algorithm corresponds closely to the algorithmillustrated in FIG. 30, but is modified to improve performance. Inparticular, this algorithm introduces a concept of a direction ofconvergence of a parameter value. For example, within the inner loop ofthe algorithm, the direction is initialised to 0. When creating a set ofcandidate constellations, the candidate set depends on the directionparameter. When the best constellation is selected in operation 1109,the direction of convergence of the value of parameter i is obtained.For example, if the parameter value is converging upwards, then thedirection parameter may be set to +1, if the parameter is convergingdownwards, then the direction parameter may be set to −1, and if theparameter does not change, then the direction parameter may be set to 0.As illustrated in FIG. 34, the number of candidate constellations may bereduced when the parameter value is converging upwards or downwards.

As described above, an optimum constellation may be obtained for aparticular system implementation, and/or for certain system parametervalues. For example, an optimum constellation (e.g. a constellation thatoptimises the BICM capacity) may be obtained for a certain propagationchannel type (e.g. AWGN, Rayleigh or Typical Urban, TU6, channel) andfor a certain SNR. However, in some cases, data may be transmitted indifferent scenarios. For example, data may be transmitted throughdifferent types of channels and may be received with different SNRs.Furthermore, it may be desirable or required that a data transmissionsystem uses the same constellation, regardless of the scenario (e.g.channel type or SNR), for example in order to reduce system complexity.In some cases, a transmission system may use a certain constellation formany different scenarios (e.g. channel types and SNRs).

FIGS. 35-38 illustrate an algorithm for obtaining a constellation thatis optimised (e.g. achieves the best capacity) with respect to two ormore different scenarios (e.g. different channel types and/or SNRvalues). The algorithm includes a number of different parts. First, thewaterfall SNR for each channel type (e.g. propagation channel type) isobtained using an algorithm similar to the algorithm illustrated in FIG.31. A weighted performance measure function (e.g. weighted capacity) foran input constellation is defined, based on different scenarios (e.g.different channel types and SNR values). Then, an algorithm similar tothe algorithms illustrated in FIG. 24, 30 or 33 is applied to determinean optimum constellation, where the performance measure is used based onthe weighted performance measure.

FIG. 35 illustrates a process for obtaining the waterfall SNR for eachchannel type. Each channel type is treated separately in order to obtainits waterfall SNR. In particular, the process illustrated in FIG. 35 isrepeated for each channel type to obtain a respective waterfall SNR forthat channel type. The process illustrated in FIG. 35 operates insubstantially the same manner as the algorithm illustrated in FIG. 31,and therefore a detailed description will be omitted for conciseness.However, rather than outputting an optimal constellation, as in thealgorithm illustrated in FIG. 31, the process illustrated in FIG. 35instead outputs the waterfall SNR determined in the final iteration ofthe process. The process illustrated in FIG. 35 (including BERsimulation and capacity optimisation operations) is performed based on acertain channel type, and the output waterfall SNR is determined as thewaterfall SNR associated with that channel type.

FIG. 36 schematically illustrates a process for obtaining a weightedperformance measure function for an input constellation based ondifferent transmission scenarios. In this example, the weightedperformance measure is a weighted capacity, and the different scenariosinclude different channel types and associated waterfall SNR values. Asillustrated in FIG. 36, a candidate constellation is provided as aninput. For each channel type and associated waterfall SNR, the BICMcapacity for the input constellation based on the channel type andwaterfall SNR is obtained. Each obtained BICM capacity is thenmultiplied by a respective weight and the weighted BICM capacities areadded together to obtain an output weighted average BICM capacity. Theweights may be selected according to any suitable criteria. For example,a relatively common or important channel type may be associated with arelatively large weight.

FIG. 37 illustrates a process for obtaining an optimum constellation.The process illustrated in FIG. 37 operates in substantially the samemanner as the algorithm illustrated in FIG. 24, 30 or 33, and thereforea detailed description will be omitted for conciseness. However, whendetermining the performance of a candidate constellation in the processillustrated in FIG. 37, the performance is determined based on theweighted performance measure described above in relation to FIG. 36.

In the process illustrated in FIG. 37, in some situation, a certainconstellation may achieve the best performance with respect to theweighted performance measure, even though the performance of thatconstellation with respect to the BICM capacity based on an individualchannel and SNR may be relatively low. In certain exemplary embodiments,to ensure that a constellation obtained using the algorithm is able toachieve at least a certain level of performance for one or more, or all,transmission scenarios, an additional criterion may be applied whentesting each candidate constellation to obtain the constellation C_best.Specifically, any candidate constellation that does not achieve at leasta threshold performance with respect to one or more certain individualscenarios, or all scenarios, is ignored and cannot be selected asC_best, even if that constellation achieves the best performance withrespect to the weighted performance measure.

In the process illustrated in FIG. 37, a set of candidate constellationsmay be derived using any suitable method, for example the methoddescribed above in relation to FIG. 31 based on a step size d. FIGS. 38Aand 38B illustrate alternative schemes for generating a candidateconstellation from a previous constellation, C_last, that may be used incertain exemplary embodiments. In FIGS. 38A and 38B, the open circlesrepresent the constellation points of a previous constellation, C_last.For each constellation point of the previous constellation, a respectiveset of N modified constellation points are defined, as indicated inFIGS. 38A and 38B as filled circles. Each set of modified constellationpoints forms a pattern of constellation points located relatively closeto the respective constellation point of the previous constellation.

For example, as illustrated in FIG. 38A, each set of modifiedconstellation points may form a square or rectangular lattice of N=8constellation points surrounding a respective constellation point of theprevious constellation. The lattice spacing is equal to d.Alternatively, as illustrated in FIG. 38B, each set of modifiedconstellation points may form a ring of N=8 constellation pointssurrounding a respective constellation point of the previousconstellation. The radius of the ring is equal to d.

A candidate constellation may be obtained by selecting, for eachconstellation point in the previous constellation, either theconstellation point of the previous constellation itself or one of theconstellation points of a respective set of modified constellationpoints.

In the examples described above, a weighted performance measure isdefined based on different transmission scenarios. For example, in thecase illustrated in FIG. 36, each transmission scenario includes adifferent channel type and an associated waterfall SNR value.Accordingly, a constellation optimised for a range of channel types andassociated SNR values may be obtained. In an alternative embodiment, anoptimal constellation may be obtained for different transmissionscenarios, in the case where each transmission scenario includes thesame channel type, but involves different SNR values (e.g. a set of SNRvalues S1, S1+d, S1+2d, S1+3d, . . . , S2, where d is a step size). Thatis, an optimal constellation may be obtained for a fixed channel typethat is intended to be used over a range of SNR values. In this case,the algorithm described above in relation to FIGS. 35-38B may be used,except that when determining the weighted performance measure asillustrated in FIG. 36, instead of determining individual BICMcapacities based on respective channel types and associated waterfallSNR values, the individual BICM capacities are determined based on thefixed channel type and respective SNR values S1, S1+d, S1+2d, S1+3d, . .. , S2.

In the algorithms described above, a technique may be applied to reducethe overall complexity. In particular, when a set of candidateconstellations is generated and the performance of the candidateconstellations are tested, those candidate constellations that have beenpreviously tested (i.e. in one or more previous iteration) are notre-tested. That is, in a current iteration, only those candidateconstellations that have not been tested in previous iterations aretested.

For example, as described above, a first set of candidateconstellations, A, is generated in an iteration, and the best performingcandidate constellation, a (a∈ A), is selected from this set. In a nextiteration, a second set of candidate constellations, B, is generatedbased on the previously selected constellation a (a∈ B). In this nextiteration, the best performing candidate constellation b (b∈ B) from setB needs to be determined.

Typically, there will be at least some overlap between the two sets ofcandidate constellations A and B, such that one or more candidateconstellations belong to both sets A and B (i.e. A∩B≠Ø), includingconstellation a. Since it is known that constellation a has the bestperformance of all the constellations in set A, then it is also knownthat constellation a has the best performance of all the constellationsbelonging to the overlap between sets A and B (i.e. A∩B).

Accordingly, when testing the constellations in set B to determine thebest performing constellation, b, it is not necessary to re-test thoseconstellations belonging to the overlap between sets A and B (i.e. it isnot necessary to re-test those constellations in the set A∩B). Instead,rather than testing all constellations in set B, only thoseconstellations belonging to the smaller set of constellations B*,including constellations belonging to set B but excluding anyconstellations that also belong to set A (i.e. B*=B−A) are tested. Then,the best performing constellation from the set formed from the union ofB* and the previous best performing constellation, a (i.e. the bestperforming constellation from the set B*∪{a}) is selected as the bestperforming constellation, b, of set B.

An example of the above principle in relation to the example shown inFIG. 38A is illustrated in FIG. 39. In the example of FIG. 39, atiteration i, it was found that the constellation point indicated as ablack circle is the best performing constellation. At iteration i+1,there is no need to test the common subset (including the white circlesand the black circle), because it was already tested before and gave aninferior performance. That is, at iteration i+1, only the dark greycircles need to be tested. Accordingly, in the illustrated example, areduction in complexity of 44% (=4/9) is achieved.

FIG. 40 illustrates an apparatus for implementing an algorithm accordingto one or more of the embodiments described above. The apparatus isconfigured for generating a non-uniform constellation. The apparatusincludes a block for performing a first process. The block forperforming the first process includes: a block for obtaining a firstconstellation defined by one or more parameter values; and a block forgenerating a second constellation based on the first constellation usinga second process. The block for generating the second constellationbased on the first constellation using the second process includes: ablock for obtaining a set of candidate constellations, wherein the setof candidate constellations includes the first constellation and one ormore modified constellations, wherein each modified constellation isobtained by modifying the parameter values defining the firstconstellation; a block for determining performance of each candidateconstellation according to a predetermined performance measure; and ablock for selecting the candidate constellation having the bestperformance as the second constellation. The block for performing thefirst process further includes a block for determining a differencebetween the first constellation and the second constellation; and ablock for, if the second constellation differs from the firstconstellation by more than a threshold amount, causing the block forperforming the first process to repeat the first process using thesecond constellation generated in a current iteration of the firstprocess as the first constellation in a next iteration.

The skilled person will appreciate that the functions of any two or moreblocks illustrated in FIG. 40 may be performed by a single block, andthat the functions of any block illustrated in FIG. 40 may be performedby two or more blocks. A block may be implemented in any suitable form,for example hardware, software, firmware, or any suitable combination ofhardware, software and firmware.

A constellation obtained by a method according to the above exemplaryembodiments may be used in a digital broadcasting system to transmitdata from a transmitter side to a receiver side. In certain exemplaryembodiments, the system includes a transmitter arranged to obtain data(e.g. a data stream), perform any required encoding and/or otherprocessing of the data, modulate a signal using the data according to amodulation scheme corresponding to the constellation, and transmit themodulated signal. The system further includes a receiver configured toreceive a modulated signal, demodulate the signal according to ademodulation scheme corresponding to the constellation (or a similar orcorresponding constellation), and perform any necessary decoding and/orother processing to recover the original data. Certain exemplaryembodiments may include a transmitter side apparatus only, a receiverside apparatus only, or a system including both a transmitter sideapparatus and a receiver side apparatus.

In case of non-uniform constellations, it is possible to designconstellations by relaxing only one constraint, i.e. by keeping aconstellations square but changing a distance between constellationpoints. This form of non-uniform constellations (NUCs) can be referredto as one-dimensional (1D) NUCs. 1D NUCs can be described by the levelsat which the constellations occur in the real positive part. The otherpoints can be deduced by using the symmetry of the four quadrants aswell as the real and imaginary symmetry. 1D-NUCs are simple to decodebecause of independence of the real and imaginary part. Two (2) pulseamplitude modulator (PAM) demappers can be used to decode 1D-NUCs.

It is possible to design a different type of NUC by relaxing bothconstraints: the square shape and the uniform distance betweenconstellation points. Optimal constellations will have a tendency tolook like a circular constellation. This type of NUC can be referred toas 2D-NUC. The 2D-NUC has a higher capacity than the 1D-NUC and a betterBER/FER performance. However, performance of 2D-NUC comes at the expenseof a more complex receiver demapper. Since the real and imaginary axesare not symmetrical, a 2D demapper is needed in order to decode a 2D-NUCconstellation. In the case of 2D-NUC, a complete set of points need tobe specified. It is possible to specify only the points belonging to thefirst quadrant and deduce the other points by supposing that theconstellation is symmetrical.

Optimizing 1D and 2D NUCs depend on an SNR at which a capacity needs tobe optimized. In the case of a BICM chain, an SNR can be selected to bea waterfall SNR of a BER/FER curve. The BER/FER waterfall can be definedas an SNR at which a BER curve falls below a certain level, for example10e-6. The waterfall SNR depends on a coding rate of an LDPCencoder/decoder. As the code rate increases, the waterfall SNRincreases. For this reason, a different NUC is associated with each LDPCencoder coding rate. The waterfall SNR also increases with a QAMconstellation size (M). This is because the a receiver needs a higherSNR to decode a higher QAM constellation. Thus, a constellations sizeand a coding rate define the waterfall SNR. The waterfall SNR is used tooptimize the constellations. Here, the coding rates include: 2/15, 3/15and 4/15. The NUC sizes are: 16 QAM, 64 QAM, 256 QAM and 1K QAM. For thefirst three QAM sizes only 2D constellations are proposed. For 1K QAMboth 1D and 2D constellations are proposed.

Hereinafter, an example of constellation points of a constellationobtained by applying the algorithms described above by coding rates willbe described.

In the following exemplary embodiment, a restriction is added to theprocess of determining capacity according to SNR with respect to theexisting NUC designing method.

When SNR is given, it is general to calculate the maximum transmissioncapacity which can be transmitted with error-free. In other words, whencalculating capacity by setting SNR with respect to BER/FER waterfall,the SNR indicates an area where a bit error or a frame error occurs, butactual capacity indicates transmission capacity under error-freecircumstances, and thus, there may be a contradiction.

Therefore, in the present disclosure, when calculating capacity withrespect to the SNR, a correction factor is added.

For example, when SNR1 is decided with respect to CH1 in FIG. 23, if thecapacity value under error-free state is C1, corrected C1 value, that isC1′ is defined as shown below.C1′=C1×(1−H(P _(b)))  [Equation 2]

Here, P_(b) indicates a BER value which determines a waterfall area, andfunction H(x) indicates binary entropy function,H(x)=x×log₂(x)−(1−x)×log₂(1−x).

In this case, the reason why the value (1−H(P_(b))) which is equal to orsmaller than 1 is multiplied to the existing capacity value as indicatedin Equation 2 is as shown below.

With respect to a case where a bit error occurs as much as theprobability P_(b) in a transmission channel, if it is assumed that a biterror as much as P_(b) has been occurred before transmitting sourceinformation, and error does not occur while source information is beingtransmitted, there is no difference in terms of a bit error in the finaltransmitting/receiving end. As described above, when the probability oferror occurrence regarding a channel is considered a loss of sourceinformation, there is an effect as if lossy compression is applied asmuch as H(P_(b)) compared to given data, by the rate distortion theoryof Shannon. That is, in conclusion, it can be considered that dataamount which can be transmitted through firstly given channel, that iscapacity, will be reduced compared to the channel (1−H(P_(b))) withoutan error or loss.

When the same value is applied to all the channels which consider P_(b)of FIG. 36, the same factor (1−H(P_(b))) is multiplied, and thus, thesame factor (1−H(P_(b))) is multiplied to the value of weightedcapacity. Accordingly, there is no difference in the constellationpoints of the optimized NUC. However, target BER may be different foreach channel, and therefore, the order of size of weighted capacity canbe different. Accordingly, the constellation points of optimized NUC canbe different. For example, an AWGN channel is applied to a fixed devicein general, and thus, very low BER is required. Therefore, whencalculating capacity, BER=1e-8 may be considered. As Rayleigh channel islargely considered for a mobile channel which experiences fading, BERhigher than that of AWGN channel is required. Thus, BER=1c-6 can beconsidered. As described above, if different BER requirements are setfor respective channels, values of factor for final capacity becomedifferent, and therefore, this value may be different from the NUCconstellation points which are obtained in consideration of capacityonly without reflecting BER.

To be specific, Table 5 indicates values of constellation points of anormalized 2D NU 16-QAM constellation (2D 16NUC) which is obtained byapplying the algorithms described above using respective coding rates11/15 and 13/15 for a single SNR value.

TABLE 5 Coding Rate w/Shape 11/15 13/15 w0  0.934157 + 0.984668i 0.951702 + 0.951102i w1 0.986649 + 0.29029i  0.952402 + 0.306101i w2 0.271571 + 0.932473i  0.306701 + 0.952402i w3  0.290092 + 0.269491i 0.306101 + 0.306701i w4 −0.934157 + 0.984668i −0.951702 + 0.951102i w5−0.986649 + 0.29029i  −0.952402 + 0.306101i w6 −0.271571 + 0.932473i−0.306701 + 0.952402i w7 −0.290092 + 0.269491i −0.306101 + 0.306701i w8 0.934157 − 0.984668i  0.951702 − 0.951102i w9 0.986649 − 0.29029i 0.952402 − 0.306101i w10  0.271571 − 0.932473i  0.306701 − 0.952402iw11  0.290092 − 0.269491i  0.306101 − 0.306701i w12 −0.934157 −0.984668i −0.951702 − 0.951102i w13 −0.986649 − 0.29029i  −0.952402 −0.306101i w14 −0.271571 − 0.932473i −0.306701 − 0.952402i w15 −0.290092− 0.269491i −0.306101 − 0.306701i

Table 6 indicates values of constellation points of a normalized 2D NU64-QAM constellation (2D 64NUC) which is obtained by applying thealgorithms described above using respective coding rates 5/15 and 11/15for a single SNR value.

TABLE 6 Coding Rate w/Shape 5/15 11/15 w0  0.573871 + 0.976254i 1.44428 + 0.26833i w1 0.782918 + 1.24775i 0.747144 + 1.22429i w20.297932 + 1.09229i  1.17488 + 0.773395i w3 0.330876 + 1.43264i 0.713766 + 0.820077i w4  0.976152 + 0.571463i 0.163802 + 1.07689i w5  1.2484 + 0.780259i 0.292681 + 1.42171i w6  1.09086 + 0.297075i 0.146222 + 0.745719i w7  1.43269 + 0.330462i  0.413364 + 0.740848i w8 0.28977 + 0.524646i  1.02034 + 0.151686i w9  0.228711 + 0.395542i0.665303 + 0.13565i w10  0.247472 + 0.532718i  0.963923 + 0.446505i w11 0.210804 + 0.391137i  0.674568 + 0.433914i w12  0.523642 + 0.289419i 0.127098 + 0.142777i w13  0.394508 + 0.228938i  0.378204 + 0.140639iw14 0.531678 + 0.24753i  0.131136 + 0.428806i w15  0.390066 + 0.211214i 0.391865 + 0.427618i w16 −0.573871 + 0.976254i −1.44428 + 0.26833i w17−0.782918 + 1.24775i  −0.747144 + 1.22429i  w18 −0.297932 + 1.09229i  −1.17488 + 0.773395i w19 −0.330876 + 1.43264i  −0.713766 + 0.820077iw20 −0.976152 + 0.571463i −0.163802 + 1.07689i  w21  −1.2484 + 0.780259i−0.292681 + 1.42171i  w22  −1.09086 + 0.297075i −0.146222 + 0.745719iw23  −1.43269 + 0.330462i −0.413364 + 0.740848i w24  −0.28977 +0.524646i  −1.02034 + 0.151686i w25 −0.228711 + 0.395542i −0.665303 +0.13565i  w26 −0.247472 + 0.532718i −0.963923 + 0.446505i w27−0.210804 + 0.391137i −0.674568 + 0.433914i w28 −0.523642 + 0.289419i−0.127098 + 0.142777i w29 −0.394508 + 0.228938i −0.378204 + 0.140639iw30 −0.531678 + 0.24753i  −0.131136 + 0.428806i w31 −0.390066 +0.211214i −0.391865 + 0.427618i w32  0.573871 − 0.976254i  1.44428 −0.26833i w33 0.782918 − 1.24775i 0.747144 − 1.22429i w34 0.297932 −1.09229i  1.17488 − 0.773395i w35 0.330876 − 1.43264i  0.713766 −0.820077i w36  0.976152 − 0.571463i 0.163802 − 1.07689i w37   1.2484 −0.780259i 0.292681 − 1.42171i w38  1.09086 − 0.297075i  0.146222 −0.745719i w39  1.43269 − 0.330462i  0.413364 − 0.740848i w40  0.28977 −0.524646i  1.02034 − 0.151686i w41  0.228711 − 0.395542i 0.665303 −0.13565i w42  0.247472 − 0.532718i  0.963923 − 0.446505i w43  0.210804 −0.391137i  0.674568 − 0.433914i w44  0.523642 − 0.289419i  0.127098 −0.142777i w45  0.394508 − 0.228938i  0.378204 − 0.140639i w46 0.531678 −0.24753i  0.131136 − 0.428806i w47  0.390066 − 0.211214i  0.391865 −0.427618i w48 −0.573871 − 0.976254i −1.44428 − 0.26833i w49 −0.782918 −1.24775i  −0.747144 − 1.22429i  w50 −0.297932 − 1.09229i   −1.17488 −0.773395i w51 −0.330876 − 1.43264i  −0.713766 − 0.820077i w52 −0.976152− 0.571463i −0.163802 − 1.07689i  w53  −1.2484 − 0.780259i −0.292681 −1.42171i  w54  −1.09086 − 0.297075i −0.146222 − 0.745719i w55  −1.43269− 0.330462i −0.413364 − 0.740848i w56  −0.28977 − 0.524646i  −1.02034 −0.151686i w57 −0.228711 − 0.395542i −0.665303 − 0.13565i  w58 −0.247472− 0.532718i −0.963923 − 0.446505i w59 −0.210804 − 0.391137i −0.674568 −0.433914i w60 −0.523642 − 0.289419i −0.127098 − 0.142777i w61 −0.394508− 0.228938i −0.378204 − 0.140639i w62 −0.531678 − 0.24753i  −0.131136 −0.428806i w63 −0.390066 − 0.211214i −0.391865 − 0.427618i

Table 7 indicates values of constellation points of a normalized 2D NU256-QAM constellation (2D 256NUC) which is obtained by applying thealgorithms described above using respective coding rates 9/15 for asingle SNR value.

TABLE 7 Coding Rate w/Shape 9/15 w0  0.0899 + 0.1337i w1  0.0910 +0.1377i w2  0.0873 + 0.3862i w3  0.0883 + 0.3873i w4  0.1115 + 0.1442iw5  0.1135 + 0.1472i w6  0.2067 + 0.3591i w7  0.1975 + 0.3621i w8 0.1048 + 0.7533i w9  0.1770 + 0.7412i w10  0.1022 + 0.5904i w11 0.1191 + 0.5890i w12  0.4264 + 0.6230i w13  0.3650 + 0.6689i w14 0.3254 + 0.5153i w15  0.2959 + 0.5302i w16  0.3256 + 0.0768i w17 0.3266 + 0.0870i w18  0.4721 + 0.0994i w19  0.4721 + 0.1206i w20 0.2927 + 0.1267i w21  0.2947 + 0.1296i w22  0.3823 + 0.2592i w23 0.3944 + 0.2521i w24  0.7755 + 0.1118i w25  0.7513 + 0.2154i w26 0.6591 + 0.1033i w27  0.6446 + 0.1737i w28  0.5906 + 0.4930i w29 0.6538 + 0.4155i w30  0.4981 + 0.3921i w31  0.5373 + 0.3586i w32 0.1630 + 1.6621i w33  0.4720 + 1.5898i w34  0.1268 + 1.3488i w35 0.3752 + 1.2961i w36  1.0398 + 1.2991i w37  0.7733 + 1.4772i w38 0.8380 + 1.0552i w39  0.6242 + 1.2081i w40  0.1103 + 0.9397i w41 0.2415 + 0.9155i w42  0.1118 + 1.1163i w43  0.3079 + 1.0866i w44 0.5647 + 0.7638i w45  0.4385 + 0.8433i w46  0.6846 + 0.8841i w47 0.5165 + 1.0034i w48  1.6489 + 0.1630i w49  1.5848 + 0.4983i w50 1.3437 + 0.1389i w51  1.2850 + 0.4025i w52  1.2728 + 1.0661i w53 1.4509 + 0.7925i w54  1.0249 + 0.8794i w55  1.1758 + 0.6545i w56 0.9629 + 0.1113i w57  0.9226 + 0.2849i w58  1.1062 + 0.1118i w59 1.0674 + 0.3393i w60  0.7234 + 0.6223i w61  0.8211 + 0.4860i w62 0.8457 + 0.7260i w63  0.9640 + 0.5518i w64 −0.0899 + 0.1337i w65−0.0910 + 0.1377i w66 −0.0873 + 0.3862i w67 −0.0883 + 0.3873i w68−0.1115 + 0.1442i w69 −0.1135 + 0.1472i w70 −0.2067 + 0.3591i w71−0.1975 + 0.3621i w72 −0.1048 + 0.7533i w73 −0.1770 + 0.7412i w74−0.1022 + 0.5904i w75 −0.1191 + 0.5890i w76 −0.4264 + 0.6230i w77−0.3650 + 0.6689i w78 −0.3254 + 0.5153i w79 −0.2959 + 0.5302i w80−0.3256 + 0.0768i w81 −0.3266 + 0.0870i w82 −0.4721 + 0.0994i w83−0.4721 + 0.1206i w84 −0.2927 + 0.1267i w85 −0.2947 + 0.1296i w86−0.3823 + 0.2592i w87 −0.3944 + 0.2521i w88 −0.7755 + 0.1118i w89−0.7513 + 0.2154i w90 −0.6591 + 0.1033i w91 −0.6446 + 0.1737i w92−0.5906 + 0.4930i w93 −0.6538 + 0.4155i w94 −0.4981 + 0.3921i w95−0.5373 + 0.3586i w96 −0.1630 + 1.6621i w97 −0.4720 + 1.5898i w98−0.1268 + 1.3488i w99 −0.3752 + 1.2961i w100 −1.0398 + 1.2991i w101−0.7733 + 1.4772i w102 −0.8380 + 1.0552i w103 −0.6242 + 1.2081i w104−0.1103 + 0.9397i w105 −0.2415 + 0.9155i w106 −0.1118 + 1.1163i w107−0.3079 + 1.0866i w108 −0.5647 + 0.7638i w109 −0.4385 + 0.8433i w110−0.6846 + 0.8841i w111 −0.5165 + 1.0034i w112 −1.6489 + 0.1630i w113−1.5848 + 0.4983i w114 −1.3437 + 0.1389i w115 −1.2850 + 0.4025i w116−1.2728 + 1.0661i w117 −1.4509 + 0.7925i w118 −1.0249 + 0.8794i w119−1.1758 + 0.6545i w120 −0.9629 + 0.1113i w121 −0.9226 + 0.2849i w122−1.1062 + 0.1118i w123 −1.0674 + 0.3393i w124 −0.7234 + 0.6223i w125−0.8211 + 0.4860i w126 −0.8457 + 0.7260i w127 −0.9640 + 0.5518i w128 0.0899 − 0.1337i w129  0.0910 − 0.1377i w130  0.0873 − 0.3862i w131 0.0883 − 0.3873i w132  0.1115 − 0.1442i w133  0.1135 − 0.1472i w134 0.2067 − 0.3591i w135  0.1975 − 0.3621i w136  0.1048 − 0.7533i w137 0.1770 − 0.7412i w138  0.1022 − 0.5904i w139  0.1191 − 0.5890i w140 0.4264 − 0.6230i w141  0.3650 − 0.6689i w142  0.3254 − 0.5153i w143 0.2959 − 0.5302i w144  0.3256 − 0.0768i w145  0.3266 − 0.0870i w146 0.4721 − 0.0994i w147  0.4721 − 0.1206i w148  0.2927 − 0.1267i w149 0.2947 − 0.1296i w150  0.3823 − 0.2592i w151  0.3944 − 0.2521i w152 0.7755 − 0.1118i w153  0.7513 − 0.2154i w154  0.6591 − 0.1033i w155 0.6446 − 0.1737i w156  0.5906 − 0.4930i w157  0.6538 − 0.4155i w158 0.4981 − 0.3921i w159  0.5373 − 0.3586i w160  0.1630 − 1.6621i w161 0.4720 − 1.5898i w162  0.1268 − 1.3488i w163  0.3752 − 1.2961i w164 1.0398 − 1.2991i w165  0.7733 − 1.4772i w166  0.8380 − 1.0552i w167 0.6242 − 1.2081i w168  0.1103 − 0.9397i w169  0.2415 − 0.9155i w170 0.1118 − 1.1163i w171  0.3079 − 1.0866i w172  0.5647 − 0.7638i w173 0.4385 − 0.8433i w174  0.6846 − 0.8841i w175  0.5165 − 1.0034i w176 1.6489 − 0.1630i w177  1.5848 − 0.4983i w178  1.3437 − 0.1389i w179 1.2850 − 0.4025i w180  1.2728 − 1.0661i w181  1.4509 − 0.7925i w182 1.0249 − 0.8794i w183  1.1758 − 0.6545i w184  0.9629 − 0.1113i w185 0.9226 − 0.2849i w186  1.1062 − 0.1118i w187  1.0674 − 0.3393i w188 0.7234 − 0.6223i w189  0.8211 − 0.4860i w190  0.8457 − 0.7260i w191 0.9640 − 0.5518i w192 −0.0899 − 0.1337i w193 −0.0910 − 0.1377i w194−0.0873 − 0.3862i w195 −0.0883 − 0.3873i w196 −0.1115 − 0.1442i w197−0.1135 − 0.1472i w198 −0.2067 − 0.3591i w199 −0.1975 − 0.3621i w200−0.1048 − 0.7533i w201 −0.1770 − 0.7412i w202 −0.1022 − 0.5904i w203−0.1191 − 0.5890i w204 −0.4264 − 0.6230i w205 −0.3650 − 0.6689i w206−0.3254 − 0.5153i w207 −0.2959 − 0.5302i w208 −0.3256 − 0.0768i w209−0.3266 − 0.0870i w210 −0.4721 − 0.0994i w211 −0.4721 − 0.1206i w212−0.2927 − 0.1267i w213 −0.2947 − 0.1296i w214 −0.3823 − 0.2592i w215−0.3944 − 0.2521i w216 −0.7755 − 0.1118i w217 −0.7513 − 0.2154i w218−0.6591 − 0.1033i w219 −0.6446 − 0.1737i w220 −0.5906 − 0.4930i w221−0.6538 − 0.4155i w222 −0.4981 − 0.3921i w223 −0.5373 − 0.3586i w224−0.1630 − 1.6621i w225 −0.4720 − 1.5898i w226 −0.1268 − 1.3488i w227−0.3752 − 1.2961i w228 −1.0398 − 1.2991i w229 −0.7733 − 1.4772i w230−0.8380 − 1.0552i w231 −0.6242 − 1.2081i w232 −0.1103 − 0.9397i w233−0.2415 − 0.9155i w234 −0.1118 − 1.1163i w235 −0.3079 − 1.0866i w236−0.5647 − 0.7638i w237 −0.4385 − 0.8433i w238 −0.6846 − 0.8841i w239−0.5165 − 1.0034i w240 −1.6489 − 0.1630i w241 −1.5848 − 0.4983i w242−1.3437 − 0.1389i w243 −1.2850 − 0.4025i w244 −1.2728 − 1.0661i w245−1.4509 − 0.7925i w246 −1.0249 − 0.8794i w247 −1.1758 − 0.6545i w248−0.9629 − 0.1113i w249 −0.9226 − 0.2849i w250 −1.1062 − 0.1118i w251−1.0674 − 0.3393i w252 −0.7234 − 0.6223i w253 −0.8211 − 0.4860i w254−0.8457 − 0.7260i w255 −0.9640 − 0.5518i

Meanwhile, values of constellation points of one quadrant among valuesof constellation points described in Table 7 may be presented as belowTable 7-1.

TABLE 7-1 Coding Rate w/Shape 9/15 w0 0.0899 + 0.1337i w1 0.0910 +0.1377i w2 0.0873 + 0.3862i w3 0.0883 + 0.3873i w4 0.1115 + 0.1442i w50.1135 + 0.1472i w6 0.2067 + 0.3591i w7 0.1975 + 0.3621i w8 0.1048 +0.7533i w9 0.1770 + 0.7412i w10 0.1022 + 0.5904i w11 0.1191 + 0.5890iw12 0.4264 + 0.6230i w13 0.3650 + 0.6689i w14 0.3254 + 0.5153i w150.2959 + 0.5302i w16 0.3256 + 0.0768i w17 0.3266 + 0.0870i w18 0.4721 +0.0994i w19 0.4721 + 0.1206i w20 0.2927 + 0.1267i w21 0.2947 + 0.1296iw22 0.3823 + 0.2592i w23 0.3944 + 0.2521i w24 0.7755 + 0.1118i w250.7513 + 0.2154i w26 0.6591 + 0.1033i w27 0.6446 + 0.1737i w28 0.5906 +0.4930i w29 0.6538 + 0.4155i w30 0.4981 + 0.3921i w31 0.5373 + 0.3586iw32 0.1630 + 1.6621i w33 0.4720 + 1.5898i w34 0.1268 + 1.3488i w350.3752 + 1.2961i w36 1.0398 + 1.2991i w37 0.7733 + 1.4772i w38 0.8380 +1.0552i w39 0.6242 + 1.2081i w40 0.1103 + 0.9397i w41 0.2415 + 0.9155iw42 0.1118 + 1.1163i w43 0.3079 + 1.0866i w44 0.5647 + 0.7638i w450.4385 + 0.8433i w46 0.6846 + 0.8841i w47 0.5165 + 1.0034i w48 1.6489 +0.1630i w49 1.5848 + 0.4983i w50 1.3437 + 0.1389i w51 1.2850 + 0.4025iw52 1.2728 + 1.0661i w53 1.4509 + 0.7925i w54 1.0249 + 0.8794i w551.1758 + 0.6545i w56 0.9629 + 0.1113i w57 0.9226 + 0.2849i w58 1.1062 +0.1118i w59 1.0674 + 0.3393i w60 0.7234 + 0.6223i w61 0.8211 + 0.4860iw62 0.8457 + 0.7260i w63 0.9640 + 0.5518i

Meanwhile, according to Tables 5-7 and 7-1, when values of constellationpoints are determined in one quadrant, values of constellation points inother quadrants may be deduced by symmetry. For example, for eachconstellation point A in the top-right quadrant, correspondingconstellation points may be present in three different quadrants(bottom-right, bottom-left and top-left) respectively, and they can beindicated as A*, −A*, and −A. Here, * indicates complex conjugation.

Table 8 indicates values of constellation points of a normalized 1D NU1024-QAM constellation (1D 1024NUC) which is obtained by applying thealgorithms described above using respective coding rates 13/15 for asingle SNR value.

TABLE 8 Coding Rate u/CR 13/15 u0 0.0325 u1 0.0967 u2 0.1623 u3 0.2280u4 0.2957 u5 0.3645 u6 0.4361 u7 0.5100 u8 0.5878 u9 0.6696 u10 0.7566u11 0.8497 u12 0.9498 u13 1.0588 u14 1.1795 u15 1.3184

In the case of the 1D NU 1K QAM constellation, rather than giving thevalues of the constellation points explicitly, a set of levels of theconstellation points are given instead, from which actual values of theconstellation points may be deduced. To be specific, given a set of mlevels A=[u₁, u₂, . . . , u_(m)], a set of m² constellation point valuesC+Di may be deduced. Herein, C and D each may include a value selectedfrom a level set u. A complete set of constellation points in thetop-right quadrant may be obtained by considering all possible pairs ofvalues C and D. The values of constellation points in the remainingthree quadrants may be similarly deduced by symmetry. As an example,according to Table 8, when the coding rate is 2/15, A={0.0325, 0.0967, .. . , 1.3184}, and a group of C+Di corresponding to a constellationpoint set of the first quadrant has 256 elements such as{0.0325+0.0325i, 0.0325+0.0967i, 0.0967+0.0325i, . . . ,1.3184+1.3184i}, the complete set of 1D NU 1024-QAM constellation pointsmay be obtained by indicating an arbitrary element a in the group, asa*, −a* and −a. Here, * indicates complex conjugation.

As described above, in the 1D-NUC of Table 8, the constellation can bedescribed by the levels at which the constellations occur in the realpositive part. The constellation points can be deduced by using thereal/imaginary symmetry but also the symmetry of the four quadrants.

Meanwhile, the inventive concept is not limited to the constellationsdefined in Tables 5-8.

For example, when rounding-off is applied for the values ofconstellation points defined in Tables 5-6, the values can be indicatedas in Tables 9-10. In this case, the constellation defined in Tables 5-6can be an exemplary embodiment.

Tables 9-10 illustrate the set of constellation points for one quadrantonly, but it is obvious to obtain a complete set of constellation pointsby indicating the constellation point a in the one quadrant, as a*, −a*,and −a. Here, * indicates complex conjugation.

To be specific, Table 9 indicates the values of constellation points of2D NU 16-QAM constellation (2D 16NUC) which is obtained by applyingrounding-off of the values of constellation points defined in Table 5.

TABLE 9 w/Shape NUC_16_11/15 NUC_16_13/15 w0 0.9342 + 0.9847i 0.9517 +0.9511i w1 0.9866 + 0.2903i 0.9524 + 0.3061i w2 0.2716 + 0.9325i0.3067 + 0.9524i w3 0.2901 + 0.2695i 0.3061 + 0.3067i

In this case, the values of constellation points of other quadrants canbe determined by symmetry.

Table 10 indicates values of constellation points of a 2D NU 64-QAMconstellation (2D 64NUC) which is obtained by applying rounding-off ofthe values of constellation points defined in Table 6.

TABLE 10 w/Shape NUC_64_5/15 NUC_64_11/15 w0 1.4327 + 0.3305i 1.4443 +0.2683i w1 1.0909 + 0.2971i 0.7471 + 1.2243i w2 1.2484 + 0.7803i1.1749 + 0.7734i w3 0.9762 + 0.5715i 0.7138 + 0.8201i w4 0.3309 +1.4326i 0.1638 + 1.0769i w5 0.2979 + 1.0923i 0.2927 + 1.4217i w60.7829 + 1.2477i 0.1462 + 0.7457i w7 0.5739 + 0.9763i 0.4134 + 0.7408iw8 0.3901 + 0.2112i 1.0203 + 0.1517i w9 0.5317 + 0.2475i 0.6653 +0.1357i w10 0.3945 + 0.2289i 0.9639 + 0.4465i w11 0.5236 + 0.2894i0.6746 + 0.4339i w12 0.2108 + 0.3911i 0.1271 + 0.1428i w13 0.2475 +0.5327i 0.3782 + 0.1406i w14 0.2287 + 0.3955i 0.1311 + 0.4288i w150.2898 + 0.5246i 0.3919 + 0.4276i

In this case, the values of constellation points of other quadrants canbe determined by symmetry.

Meanwhile, those skilled in the art may recognize that rotation, scaling(here, the scaling factor applied to a real axis and an imaginary axiscan be the same or different) or other transformation can be appliedwith respect to the constellation described above. The constellationindicates a comparative position of constellation points, and otherconstellation can be deduced through rotation, scaling, or othertransformation.

In addition, those skilled in the art can recognize that the inventiveconcept is not limited to constellation defined in Tables 5-10 describedabove.

For example, in certain exemplary embodiments, a constellation havingdifferent order and/or a constellation including a different arrangementor a comparative position of constellation points can be used. Asanother example, a constellation which is similar to one ofconstellations defined in Tables 5-10 can be used.

For example, a constellation which has values of constellation pointswith differences which do not exceed a predetermined threshold (orerror) from the values indicated in Tables 5-10 can be used. Here, thethreshold value can be expressed as comparative numbers (for example,0.1%, 1%, 5%, etc.), absolute numbers (for example, 0.001, 0.01, 0.1,etc.) or appropriate methods (rounding-off, flooring, ceiling, or thelike). As an example of rounding-off, constellation point“0.707316+0.707473i” can be approximated to “0.7073+0.7075i” byrounding-off at the five decimal places.

In addition, a transmitter and a receiver may use differentconstellations. For example, a transmitter and a receiver may userespective constellations which have at least one constellation pointthat has a difference which does not exceed a predetermined thresholdvalue. For example, a receiver may use a constellation having at leastone round off/round down constellation point (for example, A2) to demapconstellation points, whereas a transmitter may use a constellationhaving non-round off/round-down constellation points (for example, A1).

In addition, even if an order of the values in Tables 5-10 is changed,the set of constellation points itself is not changed, and thus, it ispossible to arrange the values by changing the order of values as inTables 5-10.

As described above, rotation, scaling, and other transformation can beapplied to the constellations defined by the various exemplaryembodiments

To be specific, the constellation point of which the absolute values ofthe constellation points defined in tables 5-7 and 9-10 are not changedand indicated as constellation points which are converted to 1:1 can beconsidered the equivalent constellation as the constellation defined intables 5-7 and 9-10. Here, conversion to 1:1 in dicates that inverseconversion is available.

For example, in a constellation, the below is applied to theconstellation points defined in tables 5-7 and 9-10.

i) rotation→conjugation→rotation or

ii) rotation→conjugation→multiplying a constant with absolute value of 1

The above constellation where the above is applied is considered to bethe same as the constellation defined in tables 5-7 and 9-10.

As an example the constellation points (B+Ai)=(0.9342+0.9847i,0.9866+0.2903i, 0.2716+0.9325i, 0.2901+0.2695i) which are obtained byrotating the constellation points defined in table 9(A+Bi)=(0.9847+0.9342i, 0.2903+0.9866i, 0.9325+0.2716i,0.2695+0.2901i)in a counterclockwise direction by 90°→conjugation→counterclowisedirection by 180°(or, multiplying −1) can be considered the sameconstellation as the constellation defined in table 9. Meanwhile, in theaforementioned example, table 9 is explained as an example, but theconstellation points A+Bi defined in tables 5-7 and 9-10 and theconstellaiton points B+Ai which are converted from A+Bi are consideredthe same as the constellation defined in tables 5-7 and 9-10.

Hereinbelow, an example of a normalization method and an exemplaryembodiment of constituting 2D constellation from a 1D level set will bedescribed.

For example, in Table 11, it is assumed that values of constellationpoints of a 1D NU 1K QAM constellation for a 13/15 coding rate are asshown below.

TABLE 11 Coding Rate Level 13/15 1 1 2 2.975413 3 4.997551 4 7.018692 59.102872 6 11.22209 7 13.42392 8 15.69921 9 18.09371 10 20.61366 1123.2898 12 26.15568 13 29.23992 14 32.59361 15 36.30895 16 40.58404

Here, when a level vector A is indicated as A=(a_(i)), (I=0, 1, 2, . . ., L−1), first of all, the vector A is normalized using Equation 3 shownbelow, and normalized vector Ā can be obtained.

$\begin{matrix}{\overset{\_}{A} = \frac{A}{\sqrt{\frac{2}{L}{\sum\limits_{i}a_{i}^{2}}}}} & \left\lbrack {{Equation}\mspace{14mu} 3} \right\rbrack\end{matrix}$

In above Equation 3, L indicates the number of level (that is,dimensionality of A). For example, in the case of 16-QAM, 64-QAM,256-QAM, 1024-QAM, and 4096-QAM, dimensionality of level can be 4, 6, 8,10 and 12 respectively.

In the example described above, the normalized vector Ā can be indicatedas Table 12 shown below.

TABLE 12 Coding Rate Level 13/15 1 0.0325 2 0.0967 3 0.1623 4 0.228 50.2957 6 0.3645 7 0.4361 8 0.51 9 0.5878 10 0.6696 11 0.7566 12 0.849713 0.9498 14 1.0588 15 1.1795 16 1.3184

Next, a final constellation is generated such that all the possiblecombinations of the real part and the imaginary part, which are the sameas one of the entries (that is, components). In this case, for anexample, gray mapping can be used.

In the example described above, constellation points in the final firstquadrant can be indicated as in Table 13 shown below.

TABLE 13 Label (int.) Constellation Point 1 1.3184 + 1.3184i 2 1.3184 +1.1795i 3 1.1795 + 1.3184i 4 1.1795 + 1.1795i 5 1.3184 + 0.9498i 61.3184 + 1.0588i 7 1.1795 + 0.9498i 8 1.1795 + 1.0588i 9 0.9498 +1.3184i 10 0.9498 + 1.1795i 11 1.0588 + 1.3184i 12 1.0588 + 1.1795i 130.9498 + 0.9498i 14 0.9498 + 1.0588i 15 1.0588 + 0.9498i 16 1.0588 +1.0588i 17 1.3184 + 0.5878i 18 1.3184 + 0.6696i 19 1.1795 + 0.5878i 201.1795 + 0.6696i 21 1.3184 + 0.8497i 22 1.3184 + 0.7566i 23 1.1795 +0.8497i 24 1.1795 + 0.7566i 25 0.9498 + 0.5878i 26 0.9498 + 0.6696i 271.0588 + 0.5878i 28 1.0588 + 0.6696i 29 0.9498 + 0.8497i 30 0.9498 +0.7566i 31 1.0588 + 0.8497i 32 1.0588 + 0.7566i 33 0.5878 + 1.1795i 340.6696 + 1.3184i 35 0.6696 + 1.1795i 36 0.5878 + 0.9498i 37 0.5878 +1.0588i 38 0.6696 + 0.9498i 39 0.6696 + 1.0588i 40 0.8497 + 1.3184i 410.8497 + 1.1795i 42 0.7566 + 1.3184i 43 0.7566 + 1.1795i 44 0.8497 +0.9498i 45 0.8497 + 1.0588i 46 0.7566 + 0.9498i 47 0.7566 + 1.0588i 480.5878 + 0.5878i 49 0.5878 + 0.6696i 50 0.6696 + 0.5878i 51 0.6696 +0.6696i 52 0.5878 + 0.8497i 53 0.5878 + 0.7566i 54 0.6696 + 0.8497i 550.6696 + 0.7566i 56 0.8497 + 0.5878i 57 0.8497 + 0.6696i 58 0.7566 +0.5878i 59 0.7566 + 0.6696i 60 0.8497 + 0.8497i 61 0.8497 + 0.7566i 620.7566 + 0.8497i 63 0.7566 + 0.7566i 64 1.3184 + 0.0325i 65 1.3184 +0.0967i 66 1.1795 + 0.0325i 67 1.1795 + 0.0967i 68 1.3184 + 0.2280i 691.3184 + 0.1623i 70 1.1795 + 0.2280i 71 1.1795 + 0.1623i 72 0.9498 +0.0325i 73 0.9498 + 0.0967i 74 1.0588 + 0.0325i 75 1.0588 + 0.0967i 760.9498 + 0.2280i 77 0.9498 + 0.1623i 78 1.0588 + 0.2280i 79 1.0588 +0.1623i 80 1.3184 + 0.5100i 81 1.3184 + 0.4361i 82 1.1795 + 0.5100i 831.1795 + 0.4361i 84 1.3184 + 0.2957i 85 1.3184 + 0.3645i 86 1.1795 +0.2957i 87 1.1795 + 0.3645i 88 0.9498 + 0.5100i 89 0.9498 + 0.4361i 901.0588 + 0.5100i 91 1.0588 + 0.4361i 92 0.9498 + 0.2957i 93 0.9498 +0.3645i 94 1.0588 + 0.2957i 95 1.0588 + 0.3645i 96 0.5878 + 0.0325i 970.5878 + 0.0967i 98 0.6696 + 0.0325i 99 0.6696 + 0.0967i 100 0.5878 +0.2280i 101 0.5878 + 0.1623i 102 0.6696 + 0.2280i 103 0.6696 + 0.1623i104 0.8497 + 0.0325i 105 0.8497 + 0.0967i 106 0.7566 + 0.0325i 1070.7566 + 0.0967i 108 0.8497 + 0.2280i 109 0.8497 + 0.1623i 110 0.7566 +0.2280i 111 0.7566 + 0.1623i 112 0.5878 + 0.5100i 113 0.5878 + 0.4361i114 0.6696 + 0.5100i 115 0.6696 + 0.4361i 116 0.5878 + 0.2957i 1170.5878 + 0.3645i 118 0.6696 + 0.2957i 119 0.6696 + 0.3645i 120 0.8497 +0.5100i 121 0.8497 + 0.4361i 122 0.7566 + 0.5100i 123 0.7566 + 0.4361i124 0.8497 + 0.2957i 125 0.8497 + 0.3645i 126 0.7566 + 0.2957i 1270.7566 + 0.3645i 128 0.0325 + 1.3184i 129 0.0325 + 1.1795i 130 0.0967 +1.3184i 131 0.0967 + 1.1795i 132 0.0325 + 0.9498i 133 0.0325 + 1.0588i134 0.0967 + 0.9498i 135 0.0967 + 1.0588i 136 0.2280 + 1.3184i 1370.2280 + 1.1795i 138 0.1623 + 1.3184i 139 0.1623 + 1.1795i 140 0.2280 +0.9498i 141 0.2280 + 1.0588i 142 0.1623 + 0.9498i 143 0.1623 + 1.0588i144 0.0325 + 0.5878i 145 0.0325 + 0.6696i 146 0.0967 + 0.5878i 1470.0967 + 0.6696i 148 0.0325 + 0.8497i 149 0.0325 + 0.7566i 150 0.0967 +0.8497i 151 0.0967 + 0.7566i 152 0.2280 + 0.5878i 153 0.2280 + 0.6696i154 0.1623 + 0.5878i 155 0.1623 + 0.6696i 156 0.2280 + 0.8497i 1570.2280 + 0.7566i 158 0.1623 + 0.8497i 159 0.1623 + 0.7566i 160 0.5100 +1.3184i 161 0.5100 + 1.1795i 162 0.4361 + 1.3184i 163 0.4361 + 1.1795i164 0.5100 + 0.9498i 165 0.5100 + 1.0588i 166 0.4361 + 0.9498i 1670.4361 + 1.0588i 168 0.2957 + 1.3184i 169 0.2957 + 1.1795i 170 0.3645 +1.3184i 171 0.3645 + 1.1795i 172 0.2957 + 0.9498i 173 0.2957 + 1.0588i174 0.3645 + 0.9498i 175 0.3645 + 1.0588i 176 0.5100 + 0.5878i 1770.5100 + 0.6696i 178 0.4361 + 0.5878i 179 0.4361 + 0.6696i 180 0.5100 +0.8497i 181 0.5100 + 0.7566i 182 0.4361 + 0.8497i 183 0.4361 + 0.7566i184 0.2957 + 0.5878i 185 0.2957 + 0.6696i 186 0.3645 + 0.5878i 1870.3645 + 0.6696i 188 0.2957 + 0.8497i 189 0.2957 + 0.7566i 190 0.3645 +0.8497i 191 0.3645 + 0.7566i 192 0.0325 + 0.0325i 193 0.0325 + 0.0967i194 0.0967 + 0.0325i 195 0.0967 + 0.0967i 196 0.0325 + 0.2280i 1970.0325 + 0.1623i 198 0.0967 + 0.2280i 199 0.0967 + 0.1623i 200 0.2280 +0.0325i 201 0.2280 + 0.0967i 202 0.1623 + 0.0325i 203 0.1623 + 0.0967i204 0.2280 + 0.2280i 205 0.2280 + 0.1623i 206 0.1623 + 0.2280i 2070.1623 + 0.1623i 208 0.0325 + 0.5100i 209 0.0325 + 0.4361i 210 0.0967 +0.5100i 211 0.0967 + 0.4361i 212 0.0325 + 0.2957i 213 0.0325 + 0.3645i214 0.0967 + 0.2957i 215 0.0967 + 0.3645i 216 0.2280 + 0.5100i 2170.2280 + 0.4361i 218 0.1623 + 0.5100i 219 0.1623 + 0.4361i 220 0.2280 +0.2957i 221 0.2280 + 0.3645i 222 0.1623 + 0.2957i 223 0.1623 + 0.3645i224 0.5100 + 0.0325i 225 0.5100 + 0.0967i 226 0.4361 + 0.0325i 2270.4361 + 0.0967i 228 0.5100 + 0.2280i 229 0.5100 + 0.1623i 230 0.4361 +0.2280i 231 0.4361 + 0.1623i 232 0.2957 + 0.0325i 233 0.2957 + 0.0967i234 0.3645 + 0.0325i 235 0.3645 + 0.0967i 236 0.2957 + 0.2280i 2370.2957 + 0.1623i 238 0.3645 + 0.2280i 239 0.3645 + 0.1623i 240 0.5100 +0.5100i 241 0.5100 + 0.4361i 242 0.4361 + 0.5100i 243 0.4361 + 0.4361i244 0.5100 + 0.2957i 245 0.5100 + 0.3645i 246 0.4361 + 0.2957i 2470.4361 + 0.3645i 248 0.2957 + 0.5100i 249 0.2957 + 0.4361i 250 0.3645 +0.5100i 251 0.3645 + 0.4361i 252 0.2957 + 0.2957i 253 0.2957 + 0.3645i254 0.3645 + 0.2957i 255 0.3645 + 0.3645i 256 1.3184 − 1.3184i

FIG. 41 is a block diagram to describe a configuration of a transmittingapparatus according to an exemplary embodiment. Referring to FIG. 41,the transmitting apparatus 5900 includes an encoder 5910, an interleaver5920, and a modulator 5930 (or, ‘mapper’, ‘constellation mapper’).

The encoder 5910 performs channel encoding with respect to input bitsand generates a codeword.

For example, the encoder 5910 may perform LDPC encoding with respect tothe bits and generate an LDPC codeword using an LDPC encoder (notshown).

Specifically, the encoder 5910 may perform LDPC encoding with the inputbits as the information word bits, and generate the LDPC codewordconstituting the information word bits and parity bits (that is, theLDPC parity bits). In this case, the LDPC code is a systematic code, theinformation word may be included in the LDPC codeword as it is.

Herein, the LDPC codeword is constituted by the information word bitsand parity bits. For example, the LDPC codeword has N_(ldpc) bits, andmay include the information word bits formed of K_(ldpc) bits and paritybits formed of N_(parity)=N_(ldpc)−K_(ldpc) parity bits.

In this case, the encoder 5910 may perform LDPC encoding based on aparity check matrix and generate the LDPC codeword. That is, a processof performing LDPC encoding is a process of generating the LDPC codewordsatisfying H·C^(T)=0, and thus, the encoder 5910 may use the paritycheck matrix when performing LDPC encoding. Herein, H is a parity checkmatrix and C is an LDPC codeword.

To do this, the transmitting apparatus 5900 may include a separatememory and prestore various types of a parity check matrix.

However, this is merely exemplary, and channel encoding may be performedin various schemes.

The encoder 5910 may perform channel encoding using various coding ratessuch as 2/15, 3/15, 4/15, 5/15, 6/15, 7/15, 8/15, 9/15, 10/15, 11/15,12/15 and 13/15. In addition, the encoder 5910 may generate a codewordhaving various lengths such as 16200 and 64800 based on a length of thebits and coding rate.

An interleaver 5920 interleaves the codeword. That is, the interleaver5920, based on various interleaving rules, may perform bit-interleavingof the codeword generated by the encoder 5910. In this case, theinterleaver 5920 may include the parity interleaver 14210, group-wiseinterleaver 14229, and block interleaver 14230 of FIG. 7

A modulator 5930 maps the codeword which is interleaved according to amodulation scheme onto a non-uniform constellation.

Specifically, the modulator 5930 may perform serial-to-parallelconversion with respect to the interleaved codeword, and demultiplex theinterleaved codeword into a cell (or a cell word) formed of a certainnumber of bits.

For example, the modulator 5930 may receive the codeword bitsQ=(q₀,q₁,q₂, . . . ) output from the interleaver 5920, and generatescells.

In this case, the number of bits constituting each cell may be the sameas the number of bits constituting a modulation symbol (that is, amodulation order). For example, when the modulator 5930 performsmodulation using QPSK, 16-QAM, 64-QAM, 256-QAM, 1024-QAM, 4096-QAM, thenumber of bits η_(MOD) constituting the modulation symbol may be 2, 4,6, 8, 10 and 12.

For example, when the modulation scheme is 64-QAM, η_(MOD) is 6(η_(MOD)=6), and thus, each cell may be composed as (q₀,q₁,q₂,q₃,q₄,q₅),(q₆,q₇,q₈,q₉,q₁₀,q₁₁), (q₁₂,q₁₃,q₁₄,q₁₅,q₁₆,q₁₇), . . . .

In addition, the modulator 5930 may perform modulation by mapping thecells onto the non-uniform constellation.

Specifically, each cell includes bits as many as the number constitutingthe modulation symbol, and thus, the modulator 5930 may generate themodulation symbol by sequentially mapping each cell onto a constellationpoint of the non-uniform constellation. Herein, the modulation symbolcorresponds to a constellation point of a constellation.

In this case, constellation may include constellation points which aredefined based on Tables 5-10 according to a modulation scheme.

To be specific, the constellation may include the constellation pointswhich are defined by a constellation position vector as in Tables 5-7and 9-10 according to a modulation scheme. Or, the constellation mayinclude the constellation points which are defined by the constellationposition vector which is generated based on the level set as in Table 8according to a modulation scheme.

That is, the modulator 5930, in consideration of the coding rate usedfor encoding by the encoder 5910, may perform modulation by mappingcells onto the set of constellation points which corresponds to thecoding rate from among the sets of constellation points which aredefined based on Tables 5-10 according to the coding rates.

For example, constellation may include constellation points which aredefined based on Table 11, when a modulation scheme is 16-QAM.

To be specific, the modulator 5930, when encoding is performed with thecoding rate of 11/15 by the encoder 5910, may map the interleavedcodeword onto the non-uniform constellation which includes constellationpoints defined by NUC_16_11/15 of Table 9.

That is, when the coding rate is 11/15 and modulation is performed to 2D16NUC, the constellation points in the first quadrant of constellationcan be expressed as the constellation position vector{w₀,w₁,w₂,w₃}={0.9342+0.9847i, 0.9866+0.2903i, 0.2716+0.9325i,0.2901+0.2695i} which is defined as NUC_16_11/15 of Table 9.

In addition, the modulator 5930, when encoding is performed with thecoding rate of 13/15 by the encoder 5910, may map the interleavedcodeword onto the non-uniform constellation which includes theconstellation points defined by NUC_16_13/15 of Table 9.

That is, when the coding rate is 13/15 and modulation is performed to 2D16NUC, the constellation points in the first quadrant of constellationcan be expressed as the constellation position vector{w₀,w₁,w₂,w₃}={0.9517+0.9511i, 0.9524+0.3061i, 0.3067+0.9524i,0.3061+0.3067i} which is defined as NUC_16_13/15 of Table 9.

Table 9 indicates the constellation points in one quadrant ofconstellation, and the constellation points in remaining quadrants ofconstellation may be obtained by indicating each constellation point a,which is defined in Table 9, as a*, −a*, and −a respectively. (Here, *indicates complex conjugation).

As another example, constellation may include constellation points whichare defined based on Table 10, when a modulation scheme is 64-QAM.

To be specific, the modulator 5930, when encoding is performed with thecoding rate of 5/15 by the encoder 5910, may map the interleavedcodeword onto the non-uniform constellation which includes constellationpoints defined by NUC_64_5/15 of Table 10.

That is, when the coding rate is 5/15 and modulation is performed to 2D64NUC, the constellation points in the first quadrant of constellationcan be expressed as the constellation position vector {w₀,w₁,w₂, . . . ,w ₁₄,w₁₅}={1.4327+0.3305i, 1.0909+0.2971i, 1.2484+0.7803i, . . . ,0.2287+0.3955i, 0.2898+0.5246i} which is defined as NUC_64_5/15 of Table10.

In addition, the modulator 5930, when encoding is performed with thecoding rate of 11/15 by the encoder 5910, may map the interleavedcodeword onto the non-uniform constellation which includes theconstellation points defined by NUC_64_11/15 of Table 10.

That is, when the coding rate is 11/14 and modulation is performed to 2D64NUC, the constellation points in the first quadrant of constellationcan be expressed as the constellation position vector {w₀,w₁,w₂, . . . ,w ₁₄,w₁₅}={1.4443+0.2683i, 0.7471+1.2243i, 1.1749+0.7734i, . . . ,0.1311+0.4288i, 0.3919+0.4276i} which is defined as NUC_64_11/15 ofTable 10.

Table 10 indicates the constellation points in one quadrant ofconstellation, and the constellation points in remaining quadrants ofconstellation may be obtained by indicating each constellation point a,which is defined in Table 10, as a*, −a*, and −a respectively. (Here, *indicates complex conjugation).

As another example, when the modulation scheme is 256-QAM, theconstellation points which are defined based on Table 12 may beincluded.

Specifically, the modulator 5930, when encoding is performed with thecoding rate of 9/15 by the encoder 5910, may map the interleavedcodeword onto the non-uniform constellation which includes theconstellation points defined by NUC_256_9/15 of Table 7.

That is, when coding rate is 9/15 and modulation is performed to 2D256NUC, the constellation points of the first quadrant of constellationmay be expressed as the constellation position vector {w₀,w₁,w₂, . . . ,w₆₂,w₆₃}={0.0899+0.1337i, 0.0910+0.1377i, 0.0873+0.3862i, . . . ,0.8457+0.7260i, 0.9640+0.5518i} which is defined as NUC_256_9/15 ofTable 7.

As another example, constellation, when the modulation scheme is1024-QAM, may include the constellation points which are defined basedon Table 8.

Specifically, the modulator 5930, when encoding is performed with thecoding rate of 13/15 by the encoder 5910, may map the interleavedcodeword onto the non-uniform constellation which includes theconstellation points defined by NUC_1k_13/15 of Table 130.

That is, when coding rate 13s 2/15 and modulation is performed to 1D1024NUC, the level set may be A={0.0325, 0.0967, 0.1623, . . . , 1.1795,1.3184} as Table 8, and the constellation position vector indicating theconstellation points in the first quadrant may be expressed as{0.0325+0.0325i, 0.0325+0.0967i, 0.0967+0.0325i, . . . ,1.3184+1.3184i}.

Table 8 is used to define the constellation points in one quadrant ofconstellation, and the constellation points in remaining quadrants maybe obtained by indicating each constellation point, which is definedbased on Table 8, as a*, −a*, and −a (Here, * indicates complexconjugation).

In the above-described examples, it is described that the cells aremapped onto the set of constellation points which correspond to codingrate used for encoding, but this is merely exemplary, and in some cases,the modulator 5930 may map the cells onto the set of constellationpoints which do not correspond to coding rate which is used forencoding.

As an example, when 64-QAM is used, even if encoding is performed withthe coding rate of 5/15, the modulator 5930 may map the cells onto theset of constellation points which are defined as NUC_64_11/15 of Table6, instead of the set of constellation points which are defined asNUC_64_5/15 of Table 6.

The transmitting apparatus 5900 may modulate a signal which is mappedonto the constellation and transmit the signal to a receiving apparatus(for example, 6000 of FIG. 42). For example the transmitting apparatus5900 may map the signal which is mapped to the constellation onto anorthogonal frequency division multiplexing (OFDM) frame by using an OFDMscheme, and may transmit the signal to the receiving apparatus 6000 viaan allocated channel.

In other word, in mapping method for 16-QAM, 64-QAM and 256-QAM, eachinput data cell word (y_(0,s), . . . , y_(ηMOD-1,s)) shall be modulatedusing a 2D non-uniform constellation to give a constellation pointz_(s). Index s denotes the discrete time index, η_(MOD)=log₂(M), M beingthe number of constellation points, e.g., M=64 for 64-QAM. The vector ofcomplex constellation points x=(x₀, . . . , x_(M-1)) includes all Mconstellation points of the QAM alphabet. The k-th element of thisvector, x_(k), corresponds to the QAM constellation point for the inputcell word (y_(0,s), . . . , y_(ηMOD-1,s)), if these bits take on thedecimal number k (y_(0,s) being the most significant bit (MSB), andy_(ηMOD-1,s) being the least significant bit (LSB)). Due to the quadrantsymmetry, the complete vector x can be derived by defining just thefirst quarter of the complex constellation points, i.e., (x₀, . . . ,x_(M/4-1)), which corresponds to the first quadrant. The generation rulefor the remaining points is described below. Defining b=M/4, the firstquarter of complex constellation points is denoted as the NUC positionvector w=(w₀, . . . , w_(b-1)). The position vectors are defined theabove tables. As an example, the NUC position vector for a 16-QAMcomprises the complex constellation points with the labels correspondingto the decimal values 0, i.e., (y_(0,s), . . . , y_(ηMOD-1,s))=0000, tob-1, i.e., (y_(0,s), . . . , y_(ηMOD-1,s))=0011. The remainingconstellation points are derived as follows:(x ₀ , . . . , x _(b-1))=w  (first quarter)(x _(b) , . . . , x _(2b-1))=−conj(w)  (second quarter)(x _(2b) , . . . , x _(3b-1))=conj(w)  (third quarter)(x _(3b) , . . . , x _(4b-1))=−w  (fourth quarter),with conj being the complex conjugate.

As an example, the NUC position vector for 16-QAM and code rate 2/15 isconstructed as follows. From Table 10, w=(0.7073+0.7075i,0.7073+0.7074i, 0.7060+0.7077i, 0.7065+0.7071i). Here and in thefollowing, i=√(−1) is the imaginary unit. Assuming the input data cellword is (y_(0,s), . . . , y_(ηMOD-1,s))=(1100), the corresponding QAMconstellation point at time index s is z_(s)=x₁₂=−w₀=−0.7073−0.7075i.

Also, in mapping method for 1024-QAM and 4096-QAM. Each input data cellword (y_(0,s), . . . , y_(ηMOD-1,s)) at discrete time index s shall bemodulated using a 1-dimensional non-uniform QAM constellation to give aconstellation point z_(s) prior to normalization. 1-dimensional refersto the fact that a 2-dimensional QAM constellation can be separated intotwo 1-dimensional PAM constellations, one for each I and Q component.The exact values of the real and imaginary components Re(z_(s)) andIm(z_(s)) for each combination of the relevant input cell word (y_(0,s),. . . , y_(ηMOD-1,s)) are given by a 1D-NUC position vector u=(u₀, . . ., u_(v)), which defines the constellation point positions of thenon-uniform constellation in one dimension. The number of elements ofthe 1D-NUC position vector u is defined by

$v = {\frac{\sqrt{M}}{2}.}$

As an example the 1024-NUC for code rate 2/15 is defined by the NUCposition vector NUC_1k_2/15. From Table 13, u=(u₀, . . . , u₁₅)=(0.3317,0.3321, 0.3322, 0.3321, 0.3327, 0.3328, 0.3322, 0.3322, 0.9369, 0.9418,0.9514, 0.9471, 0.9448, 0.9492, 0.9394, 0.9349). Assuming the input datacell (y_(0,s), . . . , y_(ηMOD-1,s))=(0010011100) the corresponding QAMconstellation point z_(s) has Re(z_(s))=u₃=0.3321 (defined by even indexbit labels, i.e., 01010) and Im(z_(s))=u₁₁=0.9471 (defined by odd indexbit label, i.e., 00110).

FIG. 42 is a block diagram to describe a configuration of the receivingapparatus according to an exemplary embodiment. Referring to FIG. 42,the receiving apparatus 6000 includes a demodulator 6010, adeinterleaver 6020, and a decoder 6030.

The demodulator 6010 receives and demodulates a signal transmitted fromthe transmitting apparatus 5900. Specifically, the demodulator 6010 maygenerate a value corresponding to the codeword by demodulating thereceived signal.

In this case, the demodulator 6010 may perform demodulation tocorrespond to the modulation scheme which is used by the transmittingapparatus 5900. To do this, the transmitting apparatus 5900 may transmitinformation on the modulation scheme to the receiving apparatus 6000, orthe transmitting apparatus 5900 may perform modulation using themodulation scheme which is predefined between the transmitting apparatus5900 and the receiving apparatus 6000.

Meanwhile, a value which corresponds to the codeword may be expressed asa channel value with respect to the received signal. There may bevarious methods for determining the channel value, for example, a methodfor determining a log likelihood ratio (LLR) value is an example of themethod for determining the channel value.

The LLR value may indicate a log value for a ratio of the probabilitythat the bit transmitted from the transmitting apparatus 3500 is 0 andthe probability that the bit is 1. In addition, the LLR value may be abit value which is determined by a hard decision, or may be arepresentative value which is determined according to a section to whichthe probability that the bit transmitted from the transmitting apparatus3500 is 0 or 1 belongs.

The demodulator 6010 may perform cell-to-bit conversion with respect toa value corresponding to the codeword and output an LLR value in theunit of bits.

The deinterleaver 6020 deinterleaves an output value of the demodulator6010, and outputs the value to the decoder 6030.

To be specific, the deinterleaver 6020 is an element corresponding tothe interleaver 5920 of the transmitting apparatus 5900 and performs anoperation corresponding to the interleaver 5920. That is, thedeinterleaver 6020 performs the interleaving operation of theinterleaver 5920 inversely and deinterleaves an LLR value.

The decoder 6030 may perform channel decoding based on the output valueof the deinterleaver 6020.

Specifically, the decoder 6030 is an element corresponding to theencoder 5910 of the transmitting apparatus 5900, which may correct anerror by performing decoding by using the LLR value output from thedeinterleaver 6020.

For example, the decoder 6030 may include an LDPC decoder (not shown) toperform LDPC decoding.

In this case, the decoder 6030 may perform LDPC decoding using aniterative decoding scheme based on a sum-product algorithm. Herein, thesum-product algorithm refers to an algorithm by which messages (e.g.,LLR value) are exchanged through an edge on a bipartite graph of amessage passing algorithm, and an output message is calculated frommessages input to variable nodes or check nodes, and is updated.

Meanwhile, the decoder 6030 may use a parity check matrix for LDPCdecoding. In this case, the parity check matrix which is used fordecoding may have the same structure as the parity check matrix which isused for encoding.

Meanwhile, information on the parity check matrix or information on thecode rate used for LDPC decoding may be prestored in the receivingapparatus 6000 or provided by the transmitting apparatus 5900.

The foregoing is merely exemplary, and channel decoding may be performedby various schemes which correspond to the channel coding which isperformed by the transmitting apparatus 3500.

FIG.43 is a flowchart to describe a method for transmitting of atransmitting apparatus according to an exemplary embodiment.

First of all, a codeword is generated (S6110) by performing channelencoding with respect to the bits, and the codeword is interleaved(S6120).

Thereafter, the interleaved codeword is mapped onto the non-uniformconstellation according to a modulation scheme (S6130).

In this case, constellation may include the constellation points whichare defined based on Tables 5-10 according to a modulation scheme.

As an example, when, the modulation scheme is 16-QAM, constellation mayinclude the constellation points which are defined based on Table 9.

Specifically, when encoding is performed with the coding rate of 11/15,at S6130, an interleaved codeword may be mapped onto the non-uniformconstellation which includes the constellation points defined byNUC_16_11/15 of Table 9.

When encoding is performed with the coding rate of 13/15, at S6130, theinterleaved codeword may be mapped onto the non-uniform constellationwhich includes the constellation points which are defined byNUC_16_13/15 of Table 9.

As another example, when the modulation scheme is 64-QAM, constellationmay include the constellation points which are defined based on Table10.

Specifically, when encoding is performed with the coding rate of 5/15,at S6130, an interleaved codeword may be mapped onto the non-uniformconstellation which includes the constellation points defined byNUC_64_5/15 of Table 10.

When encoding is performed with the coding rate of 11/15, at S6130, theinterleaved codeword may be mapped onto the non-uniform constellationwhich includes the constellation points which are defined byNUC_64_11/15 of Table 10.

Meanwhile, Tables 9 and 10 indicate the constellation points in onequadrant of the constellation, and the constellation points in theremaining quadrants of constellation may be obtained by indicating eachconstellation point a, which is defined in Tables 11 and 12, as a*, −a*,and −a respectively (Here, * indicates complex conjugation).

As another example, when the modulation scheme is 256-QAM, constellationmay include the constellation points which are defined based on Table 7,

Specifically, when encoding is performed with the coding rate of 9/15,at S6130, the interleaved codeword may be mapped onto the non-uniformconstellation which includes the constellation points defined byNUC_256_9/15 of Table 7.

As another example, constellation may include, when the modulationscheme is 1024-QAM, the constellation points which are defined based onTable 8.

Specifically, when encoding is performed with the coding rate of 13/15,at S6130, the interleaved codeword may be mapped onto the non-uniformconstellation which includes the constellation points defined based onof Table 8.

Meanwhile, Table 8 are used to define the constellation points in onequadrant, and the constellations in the remaining quadrants ofconstellation may be obtained by indicating each constellation point a,which is defined based on Table 8, as a*, −a*, and −a respectively(Here, * indicates complex conjugation).

In the present disclosure, in order to generate the optimizedconstellation, capacity needs to be determined. To do this, SNR is animportant parameter. However, optimizing with respect to the SNR doesnot necessarily mean that an environment which satisfies the SNR isnecessary. Though it is highly likely that the optimized performance maybe obtained in the environment which satisfies the SNR, but in general,receiving SNR may change frequently according to system environment, andit is obvious that different SNR or different channel coding rate may beused according to not only complexity of realizing the system but alsovarious purposes to support several channel environments using themodulation scheme to which one NUC constellation point is applied.

FIG. 44 is a block diagram illustrating a configuration of a receivingapparatus according to an exemplary embodiment.

Referring to FIG. 44, a receiving apparatus 3800 may comprise acontroller 3810, an RF receiver 3820, a demodulator 3830 and a serviceregenerator 3840.

The controller 3810 determines an RF channel and a PLP through which aselected service is transmitted. The RF channel may be identified by acenter frequency and a bandwidth, and the PLP may be identified by itsPLP ID. A specific service may be transmitted through at least one PLPincluded in at least one RF channel, for each component constituting thespecific service. Hereinafter, for the sake of convenience ofexplanation, it is assumed that all of data needed to play back oneservice is transmitted as one PLP which is transmitted through one RFchannel. In other words, a service has only one data obtaining path toreproduce the service, and the data obtaining path is identified by anRF channel and a PLP.

The RF receiver 3820 detects an RF signal from an RF channel selected bya controller 3810 and delivers OFDM symbols, which are extracted byperforming signal processing on the RF signal, to the demodulator 3830.Herein, the signal processing may include synchronization, channelestimation, equalization, etc. Information required for the signalprocessing may be a value predetermined by the receiving apparatus 3810and a transmitter according to use and implementation thereof andincluded in a predetermined OFDM symbol among the OFDM symbols and thentransmitted to the receiving apparatus.

The demodulator 3830 performs signal processing on the OFDM symbols,extracts user packet and delivers the user packet to a servicereproducer 3740, and the service reproducer 3840 uses the user packet toreproduce and then output a service selected by a user. Here, a formatof the user packet may differ depending on a service implementationmethod and may be, for example, a TS packet or a IPv4 packet.

FIG. 45 is a block diagram illustrating a demodulator according to anexemplary embodiment.

Referring to FIG. 45, a demodulator 3830 may include a frame demapper3831, a BICM decoder 3832 for L1 signaling, a controller 3833, a BICMdecoder 3834 and an output handler 3835.

The frame demapper 3831 selects a plurality of OFDM cells constitutingan FEC block which belongs to a selected PLP in a frame including OFDMsymbols, based on control information from the controller 3833, andprovides the selected OFDM cells to the BICM decoder 3834. The framedemapper 3831 also selects a plurality of OFDM cells corresponding to atleast one FEC block which includes L1 signaling, and delivers theselected OFDM cells to the BICM decoder 3832 for L1 signaling.

The BICM decoder for L1 signaling 3832 performs signal processing on anOFDM cell corresponding to an FEC block which includes L1 signaling,extracts L1 signaling bits and delivers the L1 signaling bits to thecontroller 3833. In this case, the signal processing may include anoperation of extracting an LLR value for decoding an LDPC codeword and aprocess of using the extracted LLR value to decode the LDPC codeword.

The controller 3833 extracts an L1 signaling table from the L1 signalingbits and uses the L1 signaling table value to control operations of theframe demapper 3831, the BICM decoder 3834 and the output handler 3835.FIG. 45 illustrates that the BICM decoder 3832 for L1 signaling does notuse control information of the controller 3833. However, when the L1signaling has a layer structure similar to the layer structure of theabove described L1 pre signaling and L1 post signaling, it is obviousthat the BICM decoder 3832 for L1 signaling may be constituted by atleast one BICM decoding block, and operation of this BICM decoding blockand the frame demapper 3831 may be controlled by L1 signalinginformation of an upper layer.

The BICM decoder 3834 performs signal processing on the OFDM cellsconstituting FEC blocks which belong to a selected PLP to extractBBF(Baseband frame)s and delivers the BBFs to the output handler 3835.In this case, the signal processing may include an operation ofextracting an LLR value for decoding an LDPC codeword and an operationof using the extracted LLR value to decode the LDPC codeword, which maybe performed based on control information output from the controller3833.

The output handler 3835 performs signal processing on a BBF, extracts auser packet and delivers the extracted user packet to a servicereproducer 3840. In this case, the signal processing may be performedbased on control information output from the controller 3833.

According to an exemplary embodiment, the output handler 3835 comprisesa BBF handler(not shown) which extracts BBP(Baseband packet) from theBBF.

FIG. 46 is a flowchart provided to illustrate an operation of areceiving apparatus from a moment when a user selects a service untilthe selected service is reproduced, according to an exemplaryembodiment.

It is assumed that service information on all services selectable by auser are acquired at an initial scan (S4010) prior to the user's serviceselection (S4020). Service information may include information on a RFchannel and a PLP which transmits data required to reproduce a specificservice in a current receiving apparatus. As an example of the serviceinformation, program specific information/service information (PSI/SI)in an MPEG2-TS is available, and normally can be achieved through L2signaling and an upper-layer signaling.

In the initial scan (S4010), comprehensive information on a payload typeof PLPs which are transmitted to a specific frequency band. As anexample, there may be information on whether every PLP transmitted tothe frequency band includes a specific type of data.

When the user selects a service (S4020), the receiving apparatustransforms the selected service to a transmitting frequency and performsRF signaling detection (S4030). In the frequency transforming operation(S4020), the service information may be used.

When an RF signal is detected, the receiving apparatus performs an L1signaling extracting operation from the detected RF signal (S4050).Then, the receiving apparatus selects a PLP transmitting the selectedservice, based on the extracted L1 signaling, (S4060) and extracts a BBFfrom the selected PLP (S4070). In S4060, the service information may beused.

The operation to extract a BBF (S4070) may include an operation ofdemapping the transmitted frame and selecting OFDM cells included in aPLP, an operation of extracting an LLR value for LDPC coding/decodingfrom an OFDM cell, and an operation of decoding the LDPC codeword usingthe extracted LLR value.

The receiving apparatus, using header information of an extracted BBF,extracts a BBP from the BBF (S4080). The receiving apparatus also usesheader information of an extracted BBP to extract a user packet from theextracted BBP (S4090). The extracted user packet is used to reproducethe selected service (S4100). In the BBP extraction operation (S4080)and user packet extraction operation (S4090), L1 signaling informationextracted in the L1 signaling extraction operation may be used.

According to an exemplary embodiment, the L1 signaling informationincludes information on types of a user packet transmitted through acorresponding PLP, and information on an operation used to encapsulatethe user packet in a BBF. The foregoing information may be used in theuser packet extraction operation (S1480). Specifically, this informationmay be used in an operation of extracting the user packet which is areverse operation of encapsulation of the user packet in the BBF. Inthis case, process for extracting user packet from the BBP (restoringnull TS packet and inserting TS sync byte) is same as above description.

A non-transitory computer readable medium in which a program whichsequentially performs non-uniform constellation generation method isstored therein may be provided.

The non-transitory computer-recordable medium is not a medium configuredto temporarily store data such as a register, a cache, or a memory butan apparatus-readable medium configured to semi-permanently store data.Specifically, the above-described various applications or programs maybe stored in the non-transitory apparatus-readable medium such as acompact disc (CD), a digital versatile disc (DVD), a hard disc, aBlu-ray disc, a universal serial bus (USB), a memory card, or a readonly memory (ROM), and provided.

In the block diagram which illustrates the transmitting apparatus andreceiving apparatus, bus is not illustrated, but communication amongelements of each apparatus can be done through the bus. In addition,each apparatus may further include CPU performing the steps describedabove and processors such as a micro processor.

The components, elements, modules or units may be embodied as variousnumbers of hardware, software and/or firmware structures that executerespective functions described above, according to an exemplaryembodiment. For example, these components, elements, modules or unitsmay use a direct circuit structure, such as a memory, processing, logic,a look-up table, etc. that may execute the respective functions throughcontrols of one or more microprocessors or other control apparatuses.Also, these components, elements, modules or units may be specificallyembodied by a program or a part of code, which contains one or moreexecutable instructions for performing specified logic functions. Also,at least one of these components, elements, modules or units may furtherinclude a processor such as a central processing unit (CPU) thatperforms the respective functions, a microprocessor, or the like.

The foregoing exemplary embodiments and advantages are merely exemplaryand are not to be construed as limiting the inventive concept. Theexemplary embodiments can be readily applied to other types of device orapparatus. Also, the description of the exemplary embodiments isintended to be illustrative, and not to limit the scope of the inventiveconcept, and many alternatives, modifications, and variations will beapparent to those skilled in the art.

What is claimed is:
 1. A transmitting apparatus comprising: aninterleaver configured to interleave a codeword, wherein the codeword isgenerated by encoding input bits based on a low density parity check(LDPC) code having a code rate being 5/15; a demultiplexer configured todemultiplex bits of the interleaved codeword to generate cells; aconstellation mapper configured to map the cells onto constellationpoints for 64-quadrature amplitude modulation (QAM); and a transmitterconfigured to transmit a signal which is generated based on theconstellation points, wherein the constellation points compriseconstellation points as represented in a list below: 1.4327 + 0.3305i1.0909 + 0.2971i 1.2484 + 0.7803i 0.9762 + 0.5715i 0.3309 + 1.4326i0.2979 + 1.0923i 0.7829 + 1.2477i 0.5739 + 0.9763i 0.3901 + 0.2112i0.5317 + 0.2475i 0.3945 + 0.2289i 0.5236 + 0.2894i 0.2108 + 0.3911i0.2475 + 0.5327i 0.2287 + 0.3955i  0.2898 + 0.5246i.


2. The apparatus as claimed in claim 1, wherein the constellation pointsas defined in the list comprises constellation points in one quadrant,and wherein constellation points in remaining quadrants are obtained byindicating each constellation point a which is defined in the list asa*, −a*, and −a, respectively, * indicating complex conjugation.